first commit
This commit is contained in:
59
external/cache/sources/wl/include/miniopt.h
vendored
Normal file
59
external/cache/sources/wl/include/miniopt.h
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
* Command line options parser.
|
||||
*
|
||||
* $Copyright Open Broadcom Corporation$
|
||||
* $Id: miniopt.h 241182 2011-02-17 21:50:03Z gmo $
|
||||
*/
|
||||
|
||||
|
||||
#ifndef MINI_OPT_H
|
||||
#define MINI_OPT_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* ---- Include Files ---------------------------------------------------- */
|
||||
/* ---- Constants and Types ---------------------------------------------- */
|
||||
|
||||
#define MINIOPT_MAXKEY 128 /* Max options */
|
||||
typedef struct miniopt {
|
||||
|
||||
/* These are persistent after miniopt_init() */
|
||||
const char* name; /* name for prompt in error strings */
|
||||
const char* flags; /* option chars that take no args */
|
||||
bool longflags; /* long options may be flags */
|
||||
bool opt_end; /* at end of options (passed a "--") */
|
||||
|
||||
/* These are per-call to miniopt() */
|
||||
|
||||
int consumed; /* number of argv entries cosumed in
|
||||
* the most recent call to miniopt()
|
||||
*/
|
||||
bool positional;
|
||||
bool good_int; /* 'val' member is the result of a sucessful
|
||||
* strtol conversion of the option value
|
||||
*/
|
||||
char opt;
|
||||
char key[MINIOPT_MAXKEY];
|
||||
char* valstr; /* positional param, or value for the option,
|
||||
* or null if the option had
|
||||
* no accompanying value
|
||||
*/
|
||||
uint uval; /* strtol translation of valstr */
|
||||
int val; /* strtol translation of valstr */
|
||||
} miniopt_t;
|
||||
|
||||
void miniopt_init(miniopt_t *t, const char* name, const char* flags, bool longflags);
|
||||
int miniopt(miniopt_t *t, char **argv);
|
||||
|
||||
|
||||
/* ---- Variable Externs ------------------------------------------------- */
|
||||
/* ---- Function Prototypes ---------------------------------------------- */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* MINI_OPT_H */
|
||||
Reference in New Issue
Block a user