1.1 --- a/kconfig/expr.h Fri Mar 06 12:33:41 2009 +0000
1.2 +++ b/kconfig/expr.h Wed Mar 10 22:59:00 2010 +0100
1.3 @@ -111,21 +111,41 @@
1.4 #define SYMBOL_HASHSIZE 257
1.5 #define SYMBOL_HASHMASK 0xff
1.6
1.7 +/* A property represent the config options that can be associated
1.8 + * with a config "symbol".
1.9 + * Sample:
1.10 + * config FOO
1.11 + * default y
1.12 + * prompt "foo prompt"
1.13 + * select BAR
1.14 + * config BAZ
1.15 + * int "BAZ Value"
1.16 + * range 1..255
1.17 + */
1.18 enum prop_type {
1.19 - P_UNKNOWN, P_PROMPT, P_COMMENT, P_MENU, P_DEFAULT, P_CHOICE,
1.20 - P_SELECT, P_RANGE, P_ENV
1.21 + P_UNKNOWN,
1.22 + P_PROMPT, /* prompt "foo prompt" or "BAZ Value" */
1.23 + P_COMMENT, /* text associated with a comment */
1.24 + P_MENU, /* prompt associated with a menuconfig option */
1.25 + P_DEFAULT, /* default y */
1.26 + P_CHOICE, /* choice value */
1.27 + P_SELECT, /* select BAR */
1.28 + P_RANGE, /* range 7..100 (for a symbol) */
1.29 + P_ENV, /* value from environment variable */
1.30 };
1.31
1.32 struct property {
1.33 - struct property *next;
1.34 - struct symbol *sym;
1.35 - enum prop_type type;
1.36 - const char *text;
1.37 + struct property *next; /* next property - null if last */
1.38 + struct symbol *sym; /* the symbol for which the property is associated */
1.39 + enum prop_type type; /* type of property */
1.40 + const char *text; /* the prompt value - P_PROMPT, P_MENU, P_COMMENT */
1.41 struct expr_value visible;
1.42 - struct expr *expr;
1.43 - struct menu *menu;
1.44 - struct file *file;
1.45 - int lineno;
1.46 + struct expr *expr; /* the optional conditional part of the property */
1.47 + struct menu *menu; /* the menu the property are associated with
1.48 + * valid for: P_SELECT, P_RANGE, P_CHOICE,
1.49 + * P_PROMPT, P_DEFAULT, P_MENU, P_COMMENT */
1.50 + struct file *file; /* what file was this property defined */
1.51 + int lineno; /* what lineno was this property defined */
1.52 };
1.53
1.54 #define for_all_properties(sym, st, tok) \