CLI11  1.9.1
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 NCLI
 Ndetail
 CAppFriendThis class is simply to allow tests access to App's protected functions
 Celement_typeNot a pointer
 Celement_type< T, typename std::enable_if< is_copyable_ptr< T >::value >::type >
 Celement_value_type
 Cpair_adaptorAdaptor for set-like structure: This just wraps a normal container in a few utilities that do almost nothing
 Cpair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > >
 Cis_direct_constructible
 Cis_ostreamable
 Cis_istreamableCheck for input streamability
 Cis_tuple_like
 Ctype_countThis will only trigger for actual void type
 Ctype_count< T, typename std::enable_if< is_tuple_like< T >::value >::type >Set of overloads to get the type size of an object
 Ctype_count< T, typename std::enable_if<!is_vector< T >::value &&!is_tuple_like< T >::value &&!std::is_void< T >::value >::type >Type size for regular object types that do not look like a tuple
 Ctype_count< T, typename std::enable_if< is_vector< T >::value >::type >Type size of types that look like a vector
 Cexpected_countThis will only trigger for actual void type
 Cexpected_count< T, typename std::enable_if<!is_vector< T >::value &&!std::is_void< T >::value >::type >For most types the number of expected items is 1
 Cexpected_count< T, typename std::enable_if< is_vector< T >::value >::type >Number of expected items in a vector
 Cclassify_objectSome type that is not otherwise recognized
 Cclassify_object< T, typename std::enable_if< std::is_integral< T >::value &&std::is_signed< T >::value &&!is_bool< T >::value &&!std::is_enum< T >::value >::type >Set of overloads to classify an object according to type
 Cclassify_object< T, typename std::enable_if< std::is_integral< T >::value &&std::is_unsigned< T >::value &&!is_bool< T >::value >::type >Unsigned integers
 Cclassify_object< T, typename std::enable_if< is_bool< T >::value >::type >Boolean values
 Cclassify_object< T, typename std::enable_if< std::is_floating_point< T >::value >::type >Floats
 Cclassify_object< T, typename std::enable_if<!std::is_floating_point< T >::value &&!std::is_integral< T >::value &&std::is_assignable< T &, std::string >::value &&!is_vector< T >::value >::type >String and similar direct assignment
 Cclassify_object< T, typename std::enable_if<!std::is_floating_point< T >::value &&!std::is_integral< T >::value &&!std::is_assignable< T &, std::string >::value &&std::is_constructible< T, std::string >::value &&!is_vector< T >::value >::type >String and similar constructible and copy assignment
 Cclassify_object< T, typename std::enable_if< std::is_enum< T >::value >::type >Enumerations
 Cuncommon_type
 Cclassify_object< T, typename std::enable_if< uncommon_type< T >::value &&type_count< T >::value==1 &&is_direct_constructible< T, double >::value &&is_direct_constructible< T, int >::value >::type >Assignable from double or int
 Cclassify_object< T, typename std::enable_if< uncommon_type< T >::value &&type_count< T >::value==1 &&!is_direct_constructible< T, double >::value &&is_direct_constructible< T, int >::value >::type >Assignable from int
 Cclassify_object< T, typename std::enable_if< uncommon_type< T >::value &&type_count< T >::value==1 &&is_direct_constructible< T, double >::value &&!is_direct_constructible< T, int >::value >::type >Assignable from double
 Cclassify_object< T, typename std::enable_if< is_vector< T >::value >::type >Vector type
 CExistingFileValidatorCheck for an existing file (returns error message if check fails)
 CExistingDirectoryValidatorCheck for an existing directory (returns error message if check fails)
 CExistingPathValidatorCheck for an existing path
 CNonexistentPathValidatorCheck for an non-existing path
 CIPV4ValidatorValidate the given string is a legal ipv4 address
 CPositiveNumberValidate the argument is a number and greater than 0
 CNonNegativeNumberValidate the argument is a number and greater than or equal to 0
 CNumberValidate the argument is a number
 Chas_find
 Cclassify_object< T, typename std::enable_if<(type_count< T >::value >=2 &&!is_vector< T >::value)||(is_tuple_like< T >::value &&uncommon_type< T >::value &&!is_direct_constructible< T, double >::value &&!is_direct_constructible< T, int >::value)>::type >Tuple type
 CAppCreates a command line program, with very few defaults
 COption_groupExtension of App to better manage groups of options
 CConfigItemHolds values to load into Options
 CConfigThis class provides a converter for configuration files
 CConfigBaseThis converter works with INI/TOML files; to write proper TOML files use ConfigTOML
 CConfigTOMLConfigTOML generates a TOML compliant output
 CErrorAll errors derive from this one
 CConstructionErrorConstruction errors (not in parsing)
 CIncorrectConstructionThrown when an option is set to conflicting values (non-vector and multi args, for example)
 CBadNameStringThrown on construction of a bad name
 COptionAlreadyAddedThrown when an option already exists
 CParseErrorAnything that can error in Parse
 CSuccessThis is a successful completion on parsing, supposed to exit
 CCallForHelp-h or –help on command line
 CCallForAllHelpUsually something like –help-all on command line
 CRuntimeErrorDoes not output a diagnostic in CLI11_PARSE, but allows to return from main() with a specific error code
 CFileErrorThrown when parsing an INI file and it is missing
 CConversionErrorThrown when conversion call back fails, such as when an int fails to coerce to a string
 CValidationErrorThrown when validation of results fails
 CRequiredErrorThrown when a required option is missing
 CArgumentMismatchThrown when the wrong number of arguments has been received
 CRequiresErrorThrown when a requires option is missing
 CExcludesErrorThrown when an excludes option is present
 CExtrasErrorThrown when too many positionals or options are found
 CConfigErrorThrown when extra values are found in an INI file
 CInvalidErrorThrown when validation fails before parsing
 CHorribleError
 COptionNotFoundThrown when counting a non-existent option
 CFormatterBase
 CFormatterLambdaThis is a specialty override for lambda functions
 CFormatter
 COptionBase
 COptionDefaults
 COption
 CTimerThis is a simple timer with pretty printing. Creating the timer starts counting
 CAutoTimerThis class prints out the time upon destruction
 Cmake_voidA copy of std::void_t from C++17 (helper for C++11 and C++14)
 Cis_vectorCheck to see if something is a vector (fail check by default)
 Cis_vector< std::vector< T, A > >Check to see if something is a vector (true if actually a vector)
 Cis_vector< const std::vector< T, A > >Check to see if something is a vector (true if actually a const vector)
 Cis_boolCheck to see if something is bool (fail check by default)
 Cis_bool< bool >Check to see if something is bool (true if actually a bool)
 Cis_shared_ptrCheck to see if something is a shared pointer
 Cis_shared_ptr< std::shared_ptr< T > >Check to see if something is a shared pointer (True if really a shared pointer)
 Cis_shared_ptr< const std::shared_ptr< T > >Check to see if something is a shared pointer (True if really a shared pointer)
 Cis_copyable_ptrCheck to see if something is copyable pointer
 CIsMemberTypeThis can be specialized to override the type deduction for IsMember
 CIsMemberType< const char * >The main custom type needed here is const char * should be a string
 CValidatorSome validators that are provided
 CCustomValidatorClass wrapping some of the accessors of Validator
 CRangeProduce a range (factory). Min and max are inclusive
 CBoundProduce a bounded range (factory). Min and max are inclusive
 CIsMemberVerify items are in a set
 CTransformerTranslate named items to other or a value set
 CCheckedTransformerTranslate named items to other or a value set
 CAsNumberWithUnit
 CAsSizeValue