CLI11
C++11 Command Line Interface Parser
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 CCLI::AppCreates a command line program, with very few defaults
 CCLI::Option_groupExtension of App to better manage groups of options
 CCLI::detail::AppFriendThis 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::ConfigThis class provides a converter for configuration files
 CCLI::ConfigBaseThis converter works with INI/TOML files; to write INI files use ConfigINI
 CCLI::ConfigINIConfigINI generates a "standard" INI compliant output
 CCLI::ConfigItemHolds 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::FormatterLambdaThis 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::ErrorAll errors derive from this one
 CCLI::ConstructionErrorConstruction errors (not in parsing)
 CCLI::BadNameStringThrown on construction of a bad name
 CCLI::IncorrectConstructionThrown when an option is set to conflicting values (non-vector and multi args, for example)
 CCLI::OptionAlreadyAddedThrown when an option already exists
 CCLI::OptionNotFoundThrown when counting a nonexistent option
 CCLI::ParseErrorAnything that can error in Parse
 CCLI::ArgumentMismatchThrown when the wrong number of arguments has been received
 CCLI::ConfigErrorThrown when extra values are found in an INI file
 CCLI::ConversionErrorThrown when conversion call back fails, such as when an int fails to coerce to a string
 CCLI::ExcludesErrorThrown when an excludes option is present
 CCLI::ExtrasErrorThrown when too many positionals or options are found
 CCLI::FileErrorThrown when parsing an INI file and it is missing
 CCLI::HorribleError
 CCLI::InvalidErrorThrown when validation fails before parsing
 CCLI::RequiredErrorThrown when a required option is missing
 CCLI::RequiresErrorThrown when a requires option is missing
 CCLI::RuntimeErrorDoes not output a diagnostic in CLI11_PARSE, but allows main() to return with a specific error code
 CCLI::SuccessThis is a successful completion on parsing, supposed to exit
 CCLI::ValidationErrorThrown 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::TimerThis is a simple timer with pretty printing. Creating the timer starts counting
 CCLI::AutoTimerThis 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::ValidatorSome validators that are provided
 CCLI::AsNumberWithUnit
 CCLI::AsSizeValue
 CCLI::BoundProduce a bounded range (factory). Min and max are inclusive
 CCLI::CheckedTransformerTranslate named items to other or a value set
 CCLI::CustomValidatorClass wrapping some of the accessors of Validator
 CCLI::FileOnDefaultPath
 CCLI::IsMemberVerify items are in a set
 CCLI::RangeProduce a range (factory). Min and max are inclusive
 CCLI::TransformerTranslate named items to other or a value set
 CCLI::TypeValidator< DesiredType >Validate the input as a particular type
 CCLI::detail::EscapedStringTransformer
 CCLI::detail::ExistingDirectoryValidatorCheck for an existing directory (returns error message if check fails)
 CCLI::detail::ExistingFileValidatorCheck for an existing file (returns error message if check fails)
 CCLI::detail::ExistingPathValidatorCheck for an existing path
 CCLI::detail::IPV4ValidatorValidate the given string is a legal ipv4 address
 CCLI::detail::NonexistentPathValidatorCheck 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