|
@@ -40,6 +40,7 @@ enum parse_opt_option_flags {
|
|
|
PARSE_OPT_LASTARG_DEFAULT = 16,
|
|
|
PARSE_OPT_DISABLED = 32,
|
|
|
PARSE_OPT_EXCLUSIVE = 64,
|
|
|
+ PARSE_OPT_NOEMPTY = 128,
|
|
|
};
|
|
|
|
|
|
struct option;
|
|
@@ -122,6 +123,7 @@ struct option {
|
|
|
#define OPT_LONG(s, l, v, h) { .type = OPTION_LONG, .short_name = (s), .long_name = (l), .value = check_vtype(v, long *), .help = (h) }
|
|
|
#define OPT_U64(s, l, v, h) { .type = OPTION_U64, .short_name = (s), .long_name = (l), .value = check_vtype(v, u64 *), .help = (h) }
|
|
|
#define OPT_STRING(s, l, v, a, h) { .type = OPTION_STRING, .short_name = (s), .long_name = (l), .value = check_vtype(v, const char **), (a), .help = (h) }
|
|
|
+#define OPT_STRING_NOEMPTY(s, l, v, a, h) { .type = OPTION_STRING, .short_name = (s), .long_name = (l), .value = check_vtype(v, const char **), (a), .help = (h), .flags = PARSE_OPT_NOEMPTY}
|
|
|
#define OPT_DATE(s, l, v, h) \
|
|
|
{ .type = OPTION_CALLBACK, .short_name = (s), .long_name = (l), .value = (v), .argh = "time", .help = (h), .callback = parse_opt_approxidate_cb }
|
|
|
#define OPT_CALLBACK(s, l, v, a, h, f) \
|