28 const struct mi_opt *opts,
int *oind,
const char **oarg,
35 if (*oind > argc || *oind < 0)
36 internal_error (_(
"mi_getopt_long: oind out of bounds"));
41 if (strcmp (arg,
"--") == 0)
54 for (opt = opts; opt->
name != NULL; opt++)
56 if (strcmp (opt->
name, arg + 1) != 0)
62 error (_(
"%s: Option %s requires an argument"),
prefix, arg);
63 *oarg = argv[(*oind) + 1];
76 error (_(
"%s: Unknown option ``%s''"),
prefix, arg + 1);
83 int argc,
const char *
const *argv,
85 int *oind,
const char **oarg)
92 const char *
const *argv,
93 const struct mi_opt *opts,
int *oind,
104 static const struct mi_opt opts[] =
static int mi_getopt_1(const char *prefix, int argc, const char *const *argv, const struct mi_opt *opts, int *oind, const char **oarg, int error_on_unknown)
int mi_getopt(const char *prefix, int argc, const char *const *argv, const struct mi_opt *opts, int *oind, const char **oarg)
int mi_valid_noargs(const char *prefix, int argc, const char *const *argv)
int mi_getopt_allow_unknown(const char *prefix, int argc, const char *const *argv, const struct mi_opt *opts, int *oind, const char **oarg)
#define prefix(a, b, R, do)