X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=inline;f=ucw%2Fgetopt.h;h=5fe66cead34d435eb0d67a2d1044052f51d2e631;hb=25541ea3bb96e9f143f0e23f8ac5b432f2f6f47a;hp=3a5592470d1318aae8f26fb8ff5fb80aab8d556e;hpb=ce89c984c44f1b32713dd1dd742afc7e3ace8dc5;p=libucw.git diff --git a/ucw/getopt.h b/ucw/getopt.h index 3a559247..5fe66cea 100644 --- a/ucw/getopt.h +++ b/ucw/getopt.h @@ -31,10 +31,14 @@ void reset_getopt(void); /** If you want to start parsing of the arguments from * The default config (DEFAULT_CONFIG config option) or NULL if already loaded. * You can set it to something else manually. */ -extern char *cf_def_file; /* DEFAULT_CONFIG; NULL if already loaded */ -extern char *cf_env_file; /** ENV_VAR_CONFIG **/ +extern char *cf_def_file; +/** + * Name of environment variable that can override what configuration + * is loaded. + **/ +extern char *cf_env_file; int cf_reload(const char *file); /** Reload configuration from @file, replace the old one. **/ -int cf_load(const char *file); /** Load configuration from @file. **/ +int cf_load(const char *file); /** Load configuration from @file. If @file is NULL, reload all loaded configuration files. **/ /** * Parse some part of configuration passed in @string. * The syntax is the same as in the <>. @@ -53,17 +57,20 @@ int cf_set(const char *string); /** * List of operations used on items. * This macro is used to generate internal source code, - * but you may be interested in the actions it creates. + * but you may be interested in the list of operations it creates. + * + * Each operation corresponds to the same-named operation + * described in <>. **/ #define CF_OPERATIONS T(CLOSE) T(SET) T(CLEAR) T(ALL) \ - T(APPEND) T(PREPEND) T(REMOVE) T(EDIT) T(AFTER) T(BEFORE) T(COPY) + T(APPEND) T(PREPEND) T(REMOVE) T(EDIT) T(AFTER) T(BEFORE) T(COPY) T(RESET) /* Closing brace finishes previous block. * Basic attributes (static, dynamic, parsed) can be used with SET. * Dynamic arrays can be used with SET, APPEND, PREPEND. * Sections can be used with SET. * Lists can be used with everything. */ #define T(x) OP_##x, -enum cf_operation { CF_OPERATIONS }; /** Allowed operations on items. See <>. **/ +enum cf_operation { CF_OPERATIONS }; /** Allowed operations on items. See <> for list (they have an `OP_` prefix -- it means you use `OP_SET` instead of just `SET`). **/ #undef T struct cf_item;