@@ -71,12 +71,12 @@ static conf_ret_t configlib_walk(Conf *self, enum conf_dir direction, Conf **nex
71
71
}
72
72
73
73
74
- static conf_ret_t configlib_stat (Conf * self , const char * * name , enum conf_type * type ) {
74
+ static conf_ret_t configlib_stat (Conf * self , const char * * name , enum conf_type * type , enum conf_flag * flags ) {
75
75
ConfiglibValue * value = self -> parent ;
76
76
77
77
* name = value -> name ;
78
78
* type = value -> type ;
79
- /** @todo add flags */
79
+ * flags = value -> flags ;
80
80
81
81
return CONF_RET_OK ;
82
82
}
@@ -116,6 +116,15 @@ configlib_ret_t configlib_map(ConfiglibValue *self, void *var, enum conf_type ty
116
116
}
117
117
118
118
119
+ configlib_ret_t configlib_map_string (ConfiglibValue * self , char * str , size_t size ) {
120
+ self -> var = str ;
121
+ self -> size = size ;
122
+ self -> type = CONF_STR ;
123
+
124
+ return CONFIGLIB_RET_OK ;
125
+ }
126
+
127
+
119
128
configlib_ret_t configlib_append (ConfiglibValue * self , ConfiglibValue * parent , enum conf_dir dir ) {
120
129
if (dir == CONF_DIR_CHILD ) {
121
130
if (parent -> child == NULL ) {
@@ -172,7 +181,8 @@ static void configlib_log_walk_subtree(Conf *self, uint32_t indent) {
172
181
173
182
const char * conf_name = NULL ;
174
183
enum conf_type conf_type = CONF_SUBTREE ;
175
- self -> vmt -> stat (self , & conf_name , & conf_type );
184
+ enum conf_flag conf_flags ;
185
+ self -> vmt -> stat (self , & conf_name , & conf_type , & conf_flags );
176
186
177
187
union conf_val val = {0 };
178
188
self -> vmt -> read (self , & val );
0 commit comments