ulib parse boolean arguments
This commit is contained in:
@ -19,6 +19,9 @@ int32_t parse_args(char **argv, size_t argc, Arg *defs) {
|
|||||||
case ARG_STRING:
|
case ARG_STRING:
|
||||||
*((char **)def->ptr) = argv[i+1];
|
*((char **)def->ptr) = argv[i+1];
|
||||||
break;
|
break;
|
||||||
|
case ARG_BOOL:
|
||||||
|
*((bool *)def->ptr) = string_strcmp(argv[i+1], "yes") == 0;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
@ -10,7 +10,7 @@ size_t argslen(void);
|
|||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
char *shortname;
|
char *shortname;
|
||||||
enum { ARG_STRING } expected_value;
|
enum { ARG_STRING, ARG_BOOL } expected_value;
|
||||||
void *ptr;
|
void *ptr;
|
||||||
bool end;
|
bool end;
|
||||||
} Arg;
|
} Arg;
|
||||||
|
Reference in New Issue
Block a user