|
| | Option_group (std::string group_description, std::string group_name, App *parent) |
| |
| Option * | add_option (Option *opt) |
| | Add an existing option to the Option_group.
|
| |
| void | add_options (Option *opt) |
| | Add an existing option to the Option_group.
|
| |
| template<typename... Args> |
| void | add_options (Option *opt, Args... args) |
| | Add a bunch of options to the group.
|
| |
| App * | add_subcommand (App *subcom) |
| | Add an existing subcommand to be a member of an option_group.
|
| |
| Option * | add_option (std::string option_name, callback_t option_callback, std::string option_description="", bool defaulted=false, std::function< std::string()> func={}) |
| |
| template<typename AssignTo , typename ConvertTo = AssignTo, enable_if_t<!std::is_const< ConvertTo >::value, detail::enabler > = detail::dummy> |
| Option * | add_option (std::string option_name, AssignTo &variable, std::string option_description="") |
| | Add option for assigning to a variable.
|
| |
| Option * | add_option (std::string option_name) |
| | Add option with no description or variable assignment.
|
| |
| template<typename T , enable_if_t< std::is_const< T >::value &&std::is_constructible< std::string, T >::value, detail::enabler > = detail::dummy> |
| Option * | add_option (std::string option_name, T &option_description) |
| | Add option with description but with no variable assignment or callback.
|
| |
| App * | add_subcommand (std::string subcommand_name="", std::string subcommand_description="") |
| | Add a subcommand. Inherits INHERITABLE and OptionDefaults, and help flag.
|
| |
| App * | add_subcommand (CLI::App_p subcom) |
| | Add a previously created app as a subcommand.
|
| |
| void | _move_option (Option *opt, App *app) |
| | function that could be used by subclasses of App to shift options around into subcommands
|
| |
| | App (std::string app_description="", std::string app_name="") |
| | Create a new program. Pass in the same arguments as main(), along with a help string.
|
| |
| | App (const App &)=delete |
| |
| App & | operator= (const App &)=delete |
| |
| virtual | ~App ()=default |
| | virtual destructor
|
| |
| App * | callback (std::function< void()> app_callback) |
| |
| App * | final_callback (std::function< void()> app_callback) |
| |
| App * | parse_complete_callback (std::function< void()> pc_callback) |
| |
| App * | preparse_callback (std::function< void(std::size_t)> pp_callback) |
| |
| App * | name (std::string app_name="") |
| | Set a name for the app (empty will use parser to set the name)
|
| |
| App * | alias (std::string app_name) |
| | Set an alias for the app.
|
| |
| App * | allow_extras (bool allow=true) |
| | Remove the error when extras are left over on the command line.
|
| |
| App * | required (bool require=true) |
| | Remove the error when extras are left over on the command line.
|
| |
| App * | disabled (bool disable=true) |
| | Disable the subcommand or option group.
|
| |
| App * | silent (bool silence=true) |
| | silence the subcommand from showing up in the processed list
|
| |
| App * | disabled_by_default (bool disable=true) |
| | Set the subcommand to be disabled by default, so on clear(), at the start of each parse it is disabled.
|
| |
| App * | enabled_by_default (bool enable=true) |
| |
| App * | immediate_callback (bool immediate=true) |
| | Set the subcommand callback to be executed immediately on subcommand completion.
|
| |
| App * | validate_positionals (bool validate=true) |
| | Set the subcommand to validate positional arguments before assigning.
|
| |
| App * | allow_config_extras (bool allow=true) |
| | ignore extras in config files
|
| |
| App * | allow_config_extras (config_extras_mode mode) |
| | ignore extras in config files
|
| |
| App * | prefix_command (bool allow=true) |
| | Do not parse anything after the first unrecognized option and return.
|
| |
| App * | ignore_case (bool value=true) |
| | Ignore case. Subcommands inherit value.
|
| |
| App * | allow_windows_style_options (bool value=true) |
| |
| App * | positionals_at_end (bool value=true) |
| | Specify that the positional arguments are only at the end of the sequence.
|
| |
| App * | configurable (bool value=true) |
| | Specify that the subcommand can be triggered by a config file.
|
| |
| App * | ignore_underscore (bool value=true) |
| | Ignore underscore. Subcommands inherit value.
|
| |
| App * | formatter (std::shared_ptr< FormatterBase > fmt) |
| | Set the help formatter.
|
| |
| App * | formatter_fn (std::function< std::string(const App *, std::string, AppFormatMode)> fmt) |
| | Set the help formatter.
|
| |
| App * | config_formatter (std::shared_ptr< Config > fmt) |
| | Set the config formatter.
|
| |
| bool | parsed () const |
| | Check to see if this subcommand was parsed, true only if received on command line.
|
| |
| OptionDefaults * | option_defaults () |
| | Get the OptionDefault object, to set option defaults.
|
| |
| virtual void | pre_callback () |
| |
| std::size_t | count (std::string option_name) const |
| | Counts the number of times the given option was passed.
|
| |
| std::vector< App * > | get_subcommands () const |
| |
| std::vector< const App * > | get_subcommands (const std::function< bool(const App *)> &filter) const |
| |
| std::vector< App * > | get_subcommands (const std::function< bool(App *)> &filter) |
| |
| bool | got_subcommand (const App *subcom) const |
| | Check to see if given subcommand was selected.
|
| |
| bool | got_subcommand (std::string subcommand_name) const |
| | Check with name instead of pointer to see if subcommand was selected.
|
| |
| App * | excludes (Option *opt) |
| | Sets excluded options for the subcommand.
|
| |
| App * | excludes (App *app) |
| | Sets excluded subcommands for the subcommand.
|
| |
| App * | needs (Option *opt) |
| |
| App * | needs (App *app) |
| |
| bool | remove_excludes (Option *opt) |
| | Removes an option from the excludes list of this subcommand.
|
| |
| bool | remove_excludes (App *app) |
| | Removes a subcommand from the excludes list of this subcommand.
|
| |
| bool | remove_needs (Option *opt) |
| | Removes an option from the needs list of this subcommand.
|
| |
| bool | remove_needs (App *app) |
| | Removes a subcommand from the needs list of this subcommand.
|
| |
| std::shared_ptr< FormatterBase > | get_formatter () const |
| | Access the formatter.
|
| |
| std::shared_ptr< Config > | get_config_formatter () const |
| | Access the config formatter.
|
| |
| std::shared_ptr< ConfigBase > | get_config_formatter_base () const |
| | Access the config formatter as a configBase pointer.
|
| |
| std::string | get_description () const |
| | Get the app or subcommand description.
|
| |
| App * | description (std::string app_description) |
| | Set the description of the app.
|
| |
| std::vector< const Option * > | get_options (const std::function< bool(const Option *)> filter={}) const |
| | Get the list of options (user facing function, so returns raw pointers), has optional filter function.
|
| |
| std::vector< Option * > | get_options (const std::function< bool(Option *)> filter={}) |
| | Non-const version of the above.
|
| |
| Option * | get_option_no_throw (std::string option_name) noexcept |
| | Get an option by name (noexcept non-const version)
|
| |
| const Option * | get_option_no_throw (std::string option_name) const noexcept |
| | Get an option by name (noexcept const version)
|
| |
| const Option * | get_option (std::string option_name) const |
| | Get an option by name.
|
| |
| Option * | get_option (std::string option_name) |
| | Get an option by name (non-const version)
|
| |
| const Option * | operator[] (const std::string &option_name) const |
| | Shortcut bracket operator for getting a pointer to an option.
|
| |
| const Option * | operator[] (const char *option_name) const |
| | Shortcut bracket operator for getting a pointer to an option.
|
| |
| bool | get_ignore_case () const |
| | Check the status of ignore_case.
|
| |
| bool | get_ignore_underscore () const |
| | Check the status of ignore_underscore.
|
| |
| bool | get_fallthrough () const |
| | Check the status of fallthrough.
|
| |
| bool | get_allow_windows_style_options () const |
| | Check the status of the allow windows style options.
|
| |
| bool | get_positionals_at_end () const |
| | Check the status of the allow windows style options.
|
| |
| bool | get_configurable () const |
| | Check the status of the allow windows style options.
|
| |
| const std::string & | get_group () const |
| | Get the group of this subcommand.
|
| |
| std::string | get_footer () const |
| | Generate and return the footer.
|
| |
| std::size_t | get_require_subcommand_min () const |
| | Get the required min subcommand value.
|
| |
| std::size_t | get_require_subcommand_max () const |
| | Get the required max subcommand value.
|
| |
| std::size_t | get_require_option_min () const |
| | Get the required min option value.
|
| |
| std::size_t | get_require_option_max () const |
| | Get the required max option value.
|
| |
| bool | get_prefix_command () const |
| | Get the prefix command status.
|
| |
| bool | get_allow_extras () const |
| | Get the status of allow extras.
|
| |
| bool | get_required () const |
| | Get the status of required.
|
| |
| bool | get_disabled () const |
| | Get the status of disabled.
|
| |
| bool | get_silent () const |
| | Get the status of silence.
|
| |
| bool | get_immediate_callback () const |
| | Get the status of disabled.
|
| |
| bool | get_disabled_by_default () const |
| | Get the status of disabled by default.
|
| |
| bool | get_enabled_by_default () const |
| | Get the status of disabled by default.
|
| |
| bool | get_validate_positionals () const |
| | Get the status of validating positionals.
|
| |
| config_extras_mode | get_allow_config_extras () const |
| | Get the status of allow extras.
|
| |
| Option * | get_help_ptr () |
| | Get a pointer to the help flag.
|
| |
| const Option * | get_help_ptr () const |
| | Get a pointer to the help flag. (const)
|
| |
| const Option * | get_help_all_ptr () const |
| | Get a pointer to the help all flag. (const)
|
| |
| Option * | get_config_ptr () |
| | Get a pointer to the config option.
|
| |
| const Option * | get_config_ptr () const |
| | Get a pointer to the config option. (const)
|
| |
| Option * | get_version_ptr () |
| | Get a pointer to the version option.
|
| |
| const Option * | get_version_ptr () const |
| | Get a pointer to the version option. (const)
|
| |
| App * | get_parent () |
| | Get the parent of this subcommand (or nullptr if main app)
|
| |
| const App * | get_parent () const |
| | Get the parent of this subcommand (or nullptr if main app) (const version)
|
| |
| const std::string & | get_name () const |
| | Get the name of the current app.
|
| |
| const std::vector< std::string > & | get_aliases () const |
| | Get the aliases of the current app.
|
| |
| App * | clear_aliases () |
| | clear all the aliases of the current App
|
| |
| std::string | get_display_name (bool with_aliases=false) const |
| | Get a display name for an app.
|
| |
| bool | check_name (std::string name_to_check) const |
| | Check the name, case insensitive and underscore insensitive if set.
|
| |
| std::vector< std::string > | get_groups () const |
| | Get the groups available directly from this option (in order)
|
| |
| const std::vector< Option * > & | parse_order () const |
| | This gets a vector of pointers with the original parse order.
|
| |
| std::vector< std::string > | remaining (bool recurse=false) const |
| | This returns the missing options from the current subcommand.
|
| |
| std::vector< std::string > | remaining_for_passthrough (bool recurse=false) const |
| | This returns the missing options in a form ready for processing by another command line program.
|
| |
| std::size_t | remaining_size (bool recurse=false) const |
| | This returns the number of remaining options, minus the – separator.
|
| |
| App * | add_subcommand (std::string subcommand_name="", std::string subcommand_description="") |
| | Add a subcommand. Inherits INHERITABLE and OptionDefaults, and help flag.
|
| |
| App * | add_subcommand (CLI::App_p subcom) |
| | Add a previously created app as a subcommand.
|
| |
| bool | remove_subcommand (App *subcom) |
| | Removes a subcommand from the App. Takes a subcommand pointer. Returns true if found and removed.
|
| |
| App * | get_subcommand (const App *subcom) const |
| |
| App * | get_subcommand (std::string subcom) const |
| | Check to see if a subcommand is part of this command (text version)
|
| |
| App * | get_subcommand (int index=0) const |
| | Get a pointer to subcommand by index.
|
| |
| CLI::App_p | get_subcommand_ptr (App *subcom) const |
| | Check to see if a subcommand is part of this command and get a shared_ptr to it.
|
| |
| CLI::App_p | get_subcommand_ptr (std::string subcom) const |
| | Check to see if a subcommand is part of this command (text version)
|
| |
| CLI::App_p | get_subcommand_ptr (int index=0) const |
| | Get an owning pointer to subcommand by index.
|
| |
| App * | get_option_group (std::string group_name) const |
| | Check to see if an option group is part of this App.
|
| |
| std::size_t | count () const |
| |
| std::size_t | count_all () const |
| |
| App * | group (std::string group_name) |
| | Changes the group membership.
|
| |
| App * | require_subcommand () |
| | The argumentless form of require subcommand requires 1 or more subcommands.
|
| |
| App * | require_subcommand (int value) |
| |
| App * | require_subcommand (std::size_t min, std::size_t max) |
| |
| App * | require_option () |
| | The argumentless form of require option requires 1 or more options be used.
|
| |
| App * | require_option (int value) |
| |
| App * | require_option (std::size_t min, std::size_t max) |
| |
| App * | fallthrough (bool value=true) |
| |
| | operator bool () const |
| |
| void | clear () |
| | Reset the parsed data.
|
| |
| void | parse (int argc, const char *const *argv) |
| |
| void | parse (std::string commandline, bool program_name_included=false) |
| |
| void | parse (std::vector< std::string > &args) |
| |
| void | parse (std::vector< std::string > &&args) |
| | The real work is done here. Expects a reversed vector.
|
| |
| void | parse_from_stream (std::istream &input) |
| |
| void | failure_message (std::function< std::string(const App *, const Error &e)> function) |
| | Provide a function to print a help message. The function gets access to the App pointer and error.
|
| |
| int | exit (const Error &e, std::ostream &out=std::cout, std::ostream &err=std::cerr) const |
| | Print a nice error message and return the exit code.
|
| |
| App * | footer (std::string footer_string) |
| | Set footer.
|
| |
| App * | footer (std::function< std::string()> footer_function) |
| | Set footer.
|
| |
| std::string | config_to_str (bool default_also=false, bool write_description=false) const |
| |
| std::string | help (std::string prev="", AppFormatMode mode=AppFormatMode::Normal) const |
| |
| std::string | version () const |
| | Displays a version string.
|
| |
| Option * | add_option (std::string option_name, callback_t option_callback, std::string option_description="", bool defaulted=false, std::function< std::string()> func={}) |
| |
| template<typename AssignTo , typename ConvertTo = AssignTo, enable_if_t<!std::is_const< ConvertTo >::value, detail::enabler > = detail::dummy> |
| Option * | add_option (std::string option_name, AssignTo &variable, std::string option_description="") |
| | Add option for assigning to a variable.
|
| |
| template<typename AssignTo , enable_if_t<!std::is_const< AssignTo >::value, detail::enabler > = detail::dummy> |
| Option * | add_option_no_stream (std::string option_name, AssignTo &variable, std::string option_description="") |
| | Add option for assigning to a variable.
|
| |
| template<typename ArgType > |
| Option * | add_option_function (std::string option_name, const std::function< void(const ArgType &)> &func, std::string option_description="") |
| | Add option for a callback of a specific type.
|
| |
| Option * | add_option (std::string option_name) |
| | Add option with no description or variable assignment.
|
| |
| template<typename T , enable_if_t< std::is_const< T >::value &&std::is_constructible< std::string, T >::value, detail::enabler > = detail::dummy> |
| Option * | add_option (std::string option_name, T &option_description) |
| | Add option with description but with no variable assignment or callback.
|
| |
| Option * | set_help_flag (std::string flag_name="", const std::string &help_description="") |
| | Set a help flag, replace the existing one if present.
|
| |
| Option * | set_help_all_flag (std::string help_name="", const std::string &help_description="") |
| | Set a help all flag, replaced the existing one if present.
|
| |
| Option * | set_version_flag (std::string flag_name="", const std::string &versionString="", const std::string &version_help="Display program version information and exit") |
| | Set a version flag and version display string, replace the existing one if present.
|
| |
| Option * | set_version_flag (std::string flag_name, std::function< std::string()> vfunc, const std::string &version_help="Display program version information and exit") |
| | Generate the version string through a callback function.
|
| |
| Option * | add_flag (std::string flag_name) |
| | Add a flag with no description or variable assignment.
|
| |
| template<typename T , enable_if_t< std::is_const< T >::value &&std::is_constructible< std::string, T >::value, detail::enabler > = detail::dummy> |
| Option * | add_flag (std::string flag_name, T &flag_description) |
| |
| template<typename T , enable_if_t< std::is_constructible< T, std::int64_t >::value &&!is_bool< T >::value, detail::enabler > = detail::dummy> |
| Option * | add_flag (std::string flag_name, T &flag_count, std::string flag_description="") |
| |
| template<typename T , enable_if_t<!detail::is_mutable_container< T >::value &&!std::is_const< T >::value &&(!std::is_constructible< T, std::int64_t >::value||is_bool< T >::value) &&!std::is_constructible< std::function< void(int)>, T >::value, detail::enabler > = detail::dummy> |
| Option * | add_flag (std::string flag_name, T &flag_result, std::string flag_description="") |
| |
| template<typename T , enable_if_t<!std::is_assignable< std::function< void(std::int64_t)> &, T >::value, detail::enabler > = detail::dummy> |
| Option * | add_flag (std::string flag_name, std::vector< T > &flag_results, std::string flag_description="") |
| | Vector version to capture multiple flags.
|
| |
| Option * | add_flag_callback (std::string flag_name, std::function< void(void)> function, std::string flag_description="") |
| | Add option for callback that is triggered with a true flag and takes no arguments.
|
| |
| Option * | add_flag_function (std::string flag_name, std::function< void(std::int64_t)> function, std::string flag_description="") |
| | Add option for callback with an integer value.
|
| |
| Option * | set_config (std::string option_name="", std::string default_filename="", const std::string &help_message="Read an ini file", bool config_required=false) |
| | Set a configuration ini file option, or clear it if no name passed.
|
| |
| bool | remove_option (Option *opt) |
| | Removes an option from the App. Takes an option pointer. Returns true if found and removed.
|
| |
| template<typename T = Option_group> |
| T * | add_option_group (std::string group_name, std::string group_description="") |
| | creates an option group as part of the given app
|
| |
|
| enum class | startup_mode : char { stable
, enabled
, disabled
} |
| |
| using | missing_t = std::vector< std::pair< detail::Classifier, std::string > > |
| |
| | App (std::string app_description, std::string app_name, App *parent) |
| | Special private constructor for subcommand.
|
| |
| void | _validate () const |
| |
| void | _configure () |
| |
| void | run_callback (bool final_mode=false, bool suppress_final_callback=false) |
| | Internal function to run (App) callback, bottom up.
|
| |
| bool | _valid_subcommand (const std::string ¤t, bool ignore_used=true) const |
| | Check to see if a subcommand is valid. Give up immediately if subcommand max has been reached.
|
| |
| detail::Classifier | _recognize (const std::string ¤t, bool ignore_used_subcommands=true) const |
| | Selects a Classifier enum based on the type of the current argument.
|
| |
| void | _process_config_file () |
| | Read and process a configuration file (main app only)
|
| |
| void | _process_env () |
| | Get envname options if not yet passed. Runs on all subcommands.
|
| |
| void | _process_callbacks () |
| | Process callbacks. Runs on all subcommands.
|
| |
| void | _process_help_flags (bool trigger_help=false, bool trigger_all_help=false) const |
| |
| void | _process_requirements () |
| | Verify required options and cross requirements. Subcommands too (only if selected).
|
| |
| void | _process () |
| | Process callbacks and such.
|
| |
| void | _process_extras () |
| | Throw an error if anything is left over and should not be.
|
| |
| void | _process_extras (std::vector< std::string > &args) |
| |
| void | increment_parsed () |
| | Internal function to recursively increment the parsed counter on the current app as well unnamed subcommands.
|
| |
| void | _parse (std::vector< std::string > &args) |
| | Internal parse function.
|
| |
| void | _parse (std::vector< std::string > &&args) |
| | Internal parse function.
|
| |
| void | _parse_stream (std::istream &input) |
| | Internal function to parse a stream.
|
| |
| void | _parse_config (const std::vector< ConfigItem > &args) |
| |
| bool | _parse_single_config (const ConfigItem &item, std::size_t level=0) |
| | Fill in a single config option.
|
| |
| bool | _parse_single (std::vector< std::string > &args, bool &positional_only) |
| |
| std::size_t | _count_remaining_positionals (bool required_only=false) const |
| | Count the required remaining positional arguments.
|
| |
| bool | _has_remaining_positionals () const |
| | Count the required remaining positional arguments.
|
| |
| bool | _parse_positional (std::vector< std::string > &args, bool haltOnSubcommand) |
| |
| App * | _find_subcommand (const std::string &subc_name, bool ignore_disabled, bool ignore_used) const noexcept |
| |
| bool | _parse_subcommand (std::vector< std::string > &args) |
| |
| bool | _parse_arg (std::vector< std::string > &args, detail::Classifier current_type) |
| |
| void | _trigger_pre_parse (std::size_t remaining_args) |
| | Trigger the pre_parse callback if needed.
|
| |
| App * | _get_fallthrough_parent () |
| | Get the appropriate parent to fallthrough to which is the first one that has a name or the main app.
|
| |
| const std::string & | _compare_subcommand_names (const App &subcom, const App &base) const |
| | Helper function to run through all possible comparisons of subcommand names to check there is no overlap.
|
| |
| void | _move_to_missing (detail::Classifier val_type, const std::string &val) |
| | Helper function to place extra values in the most appropriate position.
|
| |
| std::string | name_ {} |
| | Subcommand name or program name (from parser if name is empty)
|
| |
| std::string | description_ {} |
| | Description of the current program/subcommand.
|
| |
| bool | allow_extras_ {false} |
| | If true, allow extra arguments (ie, don't throw an error). INHERITABLE.
|
| |
| config_extras_mode | allow_config_extras_ {config_extras_mode::ignore} |
| |
| bool | prefix_command_ {false} |
| | If true, return immediately on an unrecognized option (implies allow_extras) INHERITABLE.
|
| |
| bool | has_automatic_name_ {false} |
| | If set to true the name was automatically generated from the command line vs a user set name.
|
| |
| bool | required_ {false} |
| | If set to true the subcommand is required to be processed and used, ignored for main app.
|
| |
| bool | disabled_ {false} |
| | If set to true the subcommand is disabled and cannot be used, ignored for main app.
|
| |
| bool | pre_parse_called_ {false} |
| | Flag indicating that the pre_parse_callback has been triggered.
|
| |
| bool | immediate_callback_ {false} |
| |
| std::function< void(std::size_t)> | pre_parse_callback_ {} |
| | This is a function that runs prior to the start of parsing.
|
| |
| std::function< void()> | parse_complete_callback_ {} |
| | This is a function that runs when parsing has finished.
|
| |
| std::function< void()> | final_callback_ {} |
| | This is a function that runs when all processing has completed.
|
| |
| OptionDefaults | option_defaults_ {} |
| | The default values for options, customizable and changeable INHERITABLE.
|
| |
| std::vector< Option_p > | options_ {} |
| | The list of options, stored locally.
|
| |
| Option * | config_ptr_ {nullptr} |
| | Pointer to the config option.
|
| |
| std::shared_ptr< Config > | config_formatter_ {new ConfigTOML()} |
| | This is the formatter for help printing. Default provided. INHERITABLE (same pointer)
|
| |
| std::vector< App_p > | subcommands_ {} |
| | Storage for subcommand list.
|
| |
| bool | ignore_case_ {false} |
| | If true, the program name is not case sensitive INHERITABLE.
|
| |
| bool | ignore_underscore_ {false} |
| | If true, the program should ignore underscores INHERITABLE.
|
| |
| bool | fallthrough_ {false} |
| | Allow subcommand fallthrough, so that parent commands can collect commands after subcommand. INHERITABLE.
|
| |
| bool | allow_windows_style_options_ |
| | Allow '/' for options for Windows like options. Defaults to true on Windows, false otherwise. INHERITABLE.
|
| |
| bool | positionals_at_end_ {false} |
| | specify that positional arguments come at the end of the argument sequence not inheritable
|
| |
| startup_mode | default_startup {startup_mode::stable} |
| |
| bool | configurable_ {false} |
| | if set to true the subcommand can be triggered via configuration files INHERITABLE
|
| |
| bool | validate_positionals_ {false} |
| | If set to true positional options are validated before assigning INHERITABLE.
|
| |
| bool | silent_ {false} |
| |
| std::uint32_t | parsed_ {0U} |
| | Counts the number of times this command/subcommand was parsed.
|
| |
| std::size_t | require_subcommand_min_ {0} |
| | Minimum required subcommands (not inheritable!)
|
| |
| std::size_t | require_subcommand_max_ {0} |
| | Max number of subcommands allowed (parsing stops after this number). 0 is unlimited INHERITABLE.
|
| |
| std::size_t | require_option_min_ {0} |
| | Minimum required options (not inheritable!)
|
| |
| std::size_t | require_option_max_ {0} |
| | Max number of options allowed. 0 is unlimited (not inheritable)
|
| |
| App * | parent_ {nullptr} |
| | A pointer to the parent if this is a subcommand.
|
| |
| std::string | group_ {"Subcommands"} |
| | The group membership INHERITABLE.
|
| |
| std::vector< std::string > | aliases_ {} |
| | Alias names for the subcommand.
|
| |
| missing_t | missing_ {} |
| |
| std::vector< Option * > | parse_order_ {} |
| | This is a list of pointers to options with the original parse order.
|
| |
| std::vector< App * > | parsed_subcommands_ {} |
| | This is a list of the subcommands collected, in order.
|
| |
| std::set< App * > | exclude_subcommands_ {} |
| | this is a list of subcommands that are exclusionary to this one
|
| |
| std::set< Option * > | exclude_options_ {} |
| |
| std::set< App * > | need_subcommands_ {} |
| |
| std::set< Option * > | need_options_ {} |
| |
| std::string | footer_ {} |
| | Footer to put after all options in the help output INHERITABLE.
|
| |
| std::function< std::string()> | footer_callback_ {} |
| | This is a function that generates a footer to put after all other options in help output.
|
| |
| Option * | help_ptr_ {nullptr} |
| | A pointer to the help flag if there is one INHERITABLE.
|
| |
| Option * | help_all_ptr_ {nullptr} |
| | A pointer to the help all flag if there is one INHERITABLE.
|
| |
| Option * | version_ptr_ {nullptr} |
| | A pointer to a version flag if there is one.
|
| |
| std::shared_ptr< FormatterBase > | formatter_ {new Formatter()} |
| | This is the formatter for help printing. Default provided. INHERITABLE (same pointer)
|
| |
| std::function< std::string(const App *, const Error &e)> | failure_message_ {FailureMessage::simple} |
| | The error message printing function INHERITABLE.
|
| |