version 1.1136, 2021/08/25 07:09:30 |
version 1.1137, 2021/08/25 08:51:55 |
|
|
struct args_entry; |
struct args_entry; |
RB_HEAD(args_tree, args_entry); |
RB_HEAD(args_tree, args_entry); |
|
|
|
/* Arguments parsing type. */ |
|
enum args_parse_type { |
|
ARGS_PARSE_INVALID, |
|
ARGS_PARSE_STRING, |
|
ARGS_PARSE_COMMANDS_OR_STRING, |
|
ARGS_PARSE_COMMANDS |
|
}; |
|
|
/* Arguments parsing state. */ |
/* Arguments parsing state. */ |
typedef enum args_type (*args_parse_cb)(struct args *, u_int); |
typedef enum args_parse_type (*args_parse_cb)(struct args *, u_int, char **); |
struct args_parse { |
struct args_parse { |
const char *template; |
const char *template; |
int lower; |
int lower; |
|
|
void args_set(struct args *, u_char, struct args_value *); |
void args_set(struct args *, u_char, struct args_value *); |
struct args *args_create(void); |
struct args *args_create(void); |
struct args *args_parse(const struct args_parse *, struct args_value *, |
struct args *args_parse(const struct args_parse *, struct args_value *, |
u_int); |
u_int, char **); |
void args_vector(struct args *, int *, char ***); |
void args_vector(struct args *, int *, char ***); |
void args_free_value(struct args_value *); |
void args_free_value(struct args_value *); |
void args_free(struct args *); |
void args_free(struct args *); |