return state->argc - state->positional_offset;
}
-char* option_get_synopsis(const char *prefix, const Option *opt, const char *joiner, bool show_metavar) {
+char* option_get_synopsis(const Option *opt, const char *joiner, bool show_metavar) {
assert(opt);
- assert(!FLAGS_SET(opt->flags, OPTION_GROUP_MARKER)); /* A group marker should not be displayed */
+ assert(!(opt->flags & (OPTION_NAMESPACE_MARKER |
+ OPTION_GROUP_MARKER))); /* The markers should not be displayed */
- if (!prefix)
- prefix = "";
-
if (opt->flags & (OPTION_HELP_ENTRY_VERBATIM | OPTION_POSITIONAL_ENTRY))
- return strjoin(prefix, ASSERT_PTR(opt->long_code));
+ return strdup(ASSERT_PTR(opt->long_code));
/* The option formatted appropriately for --help strings, error messages, and similar:
- * <prefix>-<short><joiner>--<long>=[<metavar>]
+ * -<short><joiner>--<long>=[<metavar>]
* "=" is shown only when a long form is defined: -l --long=ARG, --long=ARG, -s ARG.
* The joiner arg is used between the short and long forms.
* As a special case, if the option has no long form and show_metavar is true,
char** option_parser_get_args(const OptionParser *state);
size_t option_parser_get_n_args(const OptionParser *state);
-char* option_get_synopsis(const char *prefix, const Option *opt, const char *joiner, bool show_metavar);
+char* option_get_synopsis(const Option *opt, const char *joiner, bool show_metavar);
- int _option_parser_get_help_table(
+ int _option_parser_get_help_table_full(
const Option options[],
const Option options_end[],
+ const char *namespace,
const char *group,
Table **ret);
+ #define option_parser_get_help_table_full(namespace, group, ret) \
+ _option_parser_get_help_table_full(ALIGN_PTR(__start_SYSTEMD_OPTIONS), __stop_SYSTEMD_OPTIONS, namespace, group, ret)
#define option_parser_get_help_table_group(group, ret) \
- _option_parser_get_help_table(ALIGN_PTR(__start_SYSTEMD_OPTIONS), __stop_SYSTEMD_OPTIONS, group, ret)
+ option_parser_get_help_table_full(/* namespace= */ NULL, group, ret)
#define option_parser_get_help_table(ret) \
option_parser_get_help_table_group(/* group= */ NULL, ret)