X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Fopt%2Fopt.h;h=4b5a2c6ceea137c9b4247f83b7fa6396aade88ed;hb=272b81be35908402abc92222ebfa2b845c240319;hp=6f4b9dda8c85a4f33389863963b57f1a87214ea4;hpb=322f249409838d2547449ce0ee8b479242ce2136;p=ccan diff --git a/ccan/opt/opt.h b/ccan/opt/opt.h index 6f4b9dda..4b5a2c6c 100644 --- a/ccan/opt/opt.h +++ b/ccan/opt/opt.h @@ -509,6 +509,24 @@ char *opt_version_and_exit(const char *version); /* Display usage string to stdout, exit(0). */ char *opt_usage_and_exit(const char *extra); +/** + * opt_find_long: low-level access to the parser + * @arg: string of form 'arg' or 'arg=val'. + * @optarg: set to `val` of present in arg, otherwise NULL. Can be NULL. + * + * Returns NULL if option is unknown. Sets *@optarg to NULL if + * there's no '='. + */ +struct opt_table *opt_find_long(const char *arg, const char **optarg); + +/** + * opt_find_short: low-level access to the parser + * @arg: character representing short option + * + * Returns NULL if option is unknown. + */ +struct opt_table *opt_find_short(char arg); + /* Below here are private declarations. */ /* You can use this directly to build tables, but the macros will ensure * consistency and type safety. */