mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 06:37:44 +00:00
LibCore: Allow marking options as 'hidden' in ArgsParser
This removes them from the main invocation example in --help, as well as hides them from autocomplete results (we were previously special-casing "help" and "version").
This commit is contained in:
parent
ef5523231c
commit
da12acfa78
2 changed files with 53 additions and 37 deletions
|
@ -37,6 +37,7 @@ public:
|
|||
char short_name { 0 };
|
||||
char const* value_name { nullptr };
|
||||
Function<bool(char const*)> accept_value;
|
||||
bool hide_from_help_and_autocomplete { false };
|
||||
|
||||
String name_for_display() const
|
||||
{
|
||||
|
@ -69,16 +70,16 @@ public:
|
|||
void print_version(FILE*);
|
||||
|
||||
void add_option(Option&&);
|
||||
void add_ignored(char const* long_name, char short_name);
|
||||
void add_option(bool& value, char const* help_string, char const* long_name, char short_name);
|
||||
void add_option(char const*& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(String& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(StringView& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(int& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(unsigned& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(double& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(Optional<double>& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_option(Optional<size_t>& value, char const* help_string, char const* long_name, char short_name, char const* value_name);
|
||||
void add_ignored(char const* long_name, char short_name, bool hidden = false);
|
||||
void add_option(bool& value, char const* help_string, char const* long_name, char short_name, bool hidden = false);
|
||||
void add_option(char const*& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(String& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(StringView& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(int& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(unsigned& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(double& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(Optional<double>& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
void add_option(Optional<size_t>& value, char const* help_string, char const* long_name, char short_name, char const* value_name, bool hidden = false);
|
||||
|
||||
void add_positional_argument(Arg&&);
|
||||
void add_positional_argument(char const*& value, char const* help_string, char const* name, Required required = Required::Yes);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue