[PATCH 3/4] parse-options: add new function "usage_msg_opt"
- From
Christian Couder <chriscool@tuxfamily.org>
- Date
- Feb 2, 2009, 05:12 UTC
- Message-ID
- <20090202061258.e044e2b7.chriscool@tuxfamily.org>
This function can be used instead of "usage_with_options" when you want to print an error message before the usage string.
It may be useful because:
if (condition)
usage_msg_opt("condition is false", usage, opts);is shorter than:
if (condition) {
fprintf(stderr, "condition is false\n\n");
usage_with_options(usage, opts);
}and may be more consistent.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org> --- parse-options.c | 8 ++++++++ parse-options.h | 4 ++++ 2 files changed, 12 insertions(+), 0 deletions(-)
This patch may be generaly useful.
diff --git a/parse-options.c b/parse-options.c index 4c5d09d..7a5fde8 100644 --- a/parse-options.c +++ b/parse-options.c @@ -449,6 +449,14 @@ void usage_with_options(const char * const *usagestr, exit(129); } +void usage_msg_opt(const char *msg, + const char * const *usagestr, + const struct option *options) +{ + fprintf(stderr, "%s\n\n", msg); + usage_with_options(usagestr, options); +} + int parse_options_usage(const char * const *usagestr, const struct option *opts) { diff --git a/parse-options.h b/parse-options.h index 9122905..6061a19 100644 --- a/parse-options.h +++ b/parse-options.h @@ -113,6 +113,10 @@ extern int parse_options(int argc, const char **argv, extern NORETURN void usage_with_options(const char * const *usagestr, const struct option *options); +extern NORETURN void usage_msg_opt(const char *msg, + const char * const *usagestr, + const struct option *options); + /*----- incremantal advanced APIs -----*/ enum {
-- 1.6.1.2.353.g99fdd.dirty