diff options
author | Arnaud Lacombe <lacombar@gmail.com> | 2011-05-15 23:42:09 -0400 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2011-07-01 10:23:27 -0400 |
commit | e54e692ba613c2170c66ce36a3791c009680af08 (patch) | |
tree | 481c7b253cc97a38f2b267ff2f7cf068a50304d4 /scripts/kconfig/lkc.h | |
parent | ec6452a5ec68498221a0ced3443cefd65b08be36 (diff) |
kconfig: introduce specialized printer
Make conf_write_symbol() grammar agnostic to be able to use it from different
code path. These path pass a printer callback which will print a symbol's name
and its value in different format.
conf_write_symbol()'s job become mostly only to prepare a string for the
printer. This avoid to have to pass specialized flag to generic
functions
Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
[mmarek: rebased on top of de12518 (kconfig: autogenerated config_is_xxx
macro)]
Signed-off-by: Michal Marek <mmarek@suse.cz>
Diffstat (limited to 'scripts/kconfig/lkc.h')
-rw-r--r-- | scripts/kconfig/lkc.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/scripts/kconfig/lkc.h b/scripts/kconfig/lkc.h index 625ec69ebeee..306c5a59efc2 100644 --- a/scripts/kconfig/lkc.h +++ b/scripts/kconfig/lkc.h | |||
@@ -87,6 +87,11 @@ void sym_set_change_count(int count); | |||
87 | void sym_add_change_count(int count); | 87 | void sym_add_change_count(int count); |
88 | void conf_set_all_new_symbols(enum conf_def_mode mode); | 88 | void conf_set_all_new_symbols(enum conf_def_mode mode); |
89 | 89 | ||
90 | struct conf_printer { | ||
91 | void (*print_symbol)(FILE *, struct symbol *, const char *, void *); | ||
92 | void (*print_comment)(FILE *, const char *, void *); | ||
93 | }; | ||
94 | |||
90 | /* confdata.c and expr.c */ | 95 | /* confdata.c and expr.c */ |
91 | static inline void xfwrite(const void *str, size_t len, size_t count, FILE *out) | 96 | static inline void xfwrite(const void *str, size_t len, size_t count, FILE *out) |
92 | { | 97 | { |