CLI11
C++11 Command Line Interface Parser
|
▼CCLI::App | Creates a command line program, with very few defaults |
CCLI::Option_group | Extension of App to better manage groups of options |
CCLI::detail::AppFriend | This class is simply to allow tests access to App's protected functions |
▼Cconditional_t | |
CCLI::detail::is_mutable_container< T, conditional_t< false, void_t< typename T::value_type, decltype(std::declval< T >().end()), decltype(std::declval< T >().clear()), decltype(std::declval< T >().insert(std::declval< decltype(std::declval< T >().end())>(), std::declval< const typename T::value_type & >()))>, void > > | |
▼CCLI::Config | This class provides a converter for configuration files |
▼CCLI::ConfigBase | This converter works with INI/TOML files; to write INI files use ConfigINI |
CCLI::ConfigINI | ConfigINI generates a "standard" INI compliant output |
CCLI::ConfigItem | Holds values to load into Options |
CCLI::detail::element_type< T, Enable > | Not a pointer |
CCLI::detail::element_type< T, typename std::enable_if< is_copyable_ptr< T >::value >::type > | |
CCLI::detail::element_value_type< T > | |
▼Cstd::false_type | |
CCLI::detail::is_mutable_container< T, _ > | |
CCLI::detail::is_readable_container< T, _ > | |
CCLI::detail::is_wrapper< T, _ > | |
CCLI::detail::pair_adaptor< T, _ > | Adaptor for set-like structure: This just wraps a normal container in a few utilities that do almost nothing |
CCLI::is_bool< T > | Check to see if something is bool (fail check by default) |
CCLI::is_shared_ptr< T > | Check to see if something is a shared pointer |
▼CCLI::FormatterBase | |
CCLI::Formatter | |
CCLI::FormatterLambda | This is a specialty override for lambda functions |
CCLI::detail::has_find< C, V > | |
CCLI::detail::is_complex< T > | Check for complex |
CCLI::is_copyable_ptr< T > | Check to see if something is copyable pointer |
CCLI::detail::is_direct_constructible< T, C > | |
CCLI::detail::is_istreamable< T, S > | Check for input streamability |
CCLI::adl_detail::is_lexical_castable< T, S > | |
CCLI::detail::is_ostreamable< T, S > | |
CCLI::detail::is_tuple_like< S > | |
CCLI::IsMemberType< T > | This can be specialized to override the type deduction for IsMember |
CCLI::IsMemberType< const char * > | The main custom type needed here is const char * should be a string |
CCLI::make_void< Ts > | A copy of std::void_t from C++17 (helper for C++11 and C++14) |
CCLI::OptionBase< CRTP > | |
▼CCLI::OptionBase< Option > | |
CCLI::Option | |
▼CCLI::OptionBase< OptionDefaults > | |
CCLI::OptionDefaults | |
▼Cstd::runtime_error | |
▼CCLI::Error | All errors derive from this one |
▼CCLI::ConstructionError | Construction errors (not in parsing) |
CCLI::BadNameString | Thrown on construction of a bad name |
CCLI::IncorrectConstruction | Thrown when an option is set to conflicting values (non-vector and multi args, for example) |
CCLI::OptionAlreadyAdded | Thrown when an option already exists |
CCLI::OptionNotFound | Thrown when counting a nonexistent option |
▼CCLI::ParseError | Anything that can error in Parse |
CCLI::ArgumentMismatch | Thrown when the wrong number of arguments has been received |
CCLI::ConfigError | Thrown when extra values are found in an INI file |
CCLI::ConversionError | Thrown when conversion call back fails, such as when an int fails to coerce to a string |
CCLI::ExcludesError | Thrown when an excludes option is present |
CCLI::ExtrasError | Thrown when too many positionals or options are found |
CCLI::FileError | Thrown when parsing an INI file and it is missing |
CCLI::HorribleError | |
CCLI::InvalidError | Thrown when validation fails before parsing |
CCLI::RequiredError | Thrown when a required option is missing |
CCLI::RequiresError | Thrown when a requires option is missing |
CCLI::RuntimeError | Does not output a diagnostic in CLI11_PARSE, but allows main() to return with a specific error code |
►CCLI::Success | This is a successful completion on parsing, supposed to exit |
CCLI::ValidationError | Thrown when validation of results fails |
CCLI::detail::subtype_count< T > | Set of overloads to get the type size of an object |
CCLI::detail::subtype_count_min< T > | Forward declare the subtype_count_min structure |
▼CCLI::Timer | This is a simple timer with pretty printing. Creating the timer starts counting |
CCLI::AutoTimer | This class prints out the time upon destruction |
▼Cstd::true_type | |
CCLI::detail::is_readable_container< T, conditional_t< false, void_t< decltype(std::declval< T >().end()), decltype(std::declval< T >().begin())>, void > > | |
CCLI::detail::is_wrapper< T, conditional_t< false, void_t< typename T::value_type >, void > > | |
CCLI::detail::pair_adaptor< T, conditional_t< false, void_t< typename T::value_type::first_type, typename T::value_type::second_type >, void > > | |
CCLI::is_bool< bool > | Check to see if something is bool (true if actually a bool) |
CCLI::is_shared_ptr< const std::shared_ptr< T > > | Check to see if something is a shared pointer (True if really a shared pointer) |
CCLI::is_shared_ptr< std::shared_ptr< T > > | Check to see if something is a shared pointer (True if really a shared pointer) |
CCLI::detail::type_count< T, Enable > | This will only trigger for actual void type |
CCLI::detail::type_count< T, typename std::enable_if< is_complex< T >::value >::type > | Type size for complex since it sometimes looks like a wrapper |
CCLI::detail::type_count< T, typename std::enable_if< is_mutable_container< T >::value >::type > | Type size of types that are wrappers,except complex and tuples(which can also be wrappers sometimes) |
CCLI::detail::type_count< T, typename std::enable_if< is_wrapper< T >::value &&!is_complex< T >::value &&!is_tuple_like< T >::value &&!is_mutable_container< T >::value >::type > | Type size of types that are wrappers,except containers complex and tuples(which can also be wrappers sometimes) |
CCLI::detail::type_count< T, typename std::enable_if<!is_wrapper< T >::value &&!is_tuple_like< T >::value &&!is_complex< T >::value &&!std::is_void< T >::value >::type > | Type size for regular object types that do not look like a tuple |
CCLI::detail::type_count_base< T, Enable > | This will only trigger for actual void type |
CCLI::detail::type_count_base< T, typename std::enable_if< is_mutable_container< T >::value >::type > | Type count base for containers is the type_count_base of the individual element |
CCLI::detail::type_count_base< T, typename std::enable_if< is_tuple_like< T >::value &&!is_mutable_container< T >::value >::type > | Base tuple size |
CCLI::detail::type_count_base< T, typename std::enable_if<!is_tuple_like< T >::value &&!is_mutable_container< T >::value &&!std::is_void< T >::value >::type > | Type size for regular object types that do not look like a tuple |
▼CCLI::Validator | Some validators that are provided |
▼CCLI::AsNumberWithUnit | |
CCLI::AsSizeValue | |
CCLI::Bound | Produce a bounded range (factory). Min and max are inclusive |
CCLI::CheckedTransformer | Translate named items to other or a value set |
CCLI::CustomValidator | Class wrapping some of the accessors of Validator |
CCLI::FileOnDefaultPath | |
CCLI::IsMember | Verify items are in a set |
CCLI::Range | Produce a range (factory). Min and max are inclusive |
CCLI::Transformer | Translate named items to other or a value set |
CCLI::TypeValidator< DesiredType > | Validate the input as a particular type |
CCLI::detail::EscapedStringTransformer | |
CCLI::detail::ExistingDirectoryValidator | Check for an existing directory (returns error message if check fails) |
CCLI::detail::ExistingFileValidator | Check for an existing file (returns error message if check fails) |
CCLI::detail::ExistingPathValidator | Check for an existing path |
CCLI::detail::IPV4Validator | Validate the given string is a legal ipv4 address |
CCLI::detail::NonexistentPathValidator | Check for an non-existing path |
CCLI::detail::wrapped_type< T, def, Enable > | Template to get the underlying value type if it exists or use a default |
CCLI::detail::wrapped_type< T, def, typename std::enable_if< is_wrapper< T >::value >::type > | Type size for regular object types that do not look like a tuple |