| 2132 | #define EMPTY_STRING_IS_NULL 1 |
| 2133 | |
| 2134 | constexpr standardConfig createStringConfig(const char *name, const char *alias, unsigned flags, int empty_to_null, char *&config_addr, const char *defaultValue, int (*is_valid)(char*,const char**), int (*update)(char*,char*,const char**)) { |
| 2135 | standardConfig conf = { |
| 2136 | embedCommonConfig(name, alias, flags) |
| 2137 | embedConfigInterface(stringConfigInit, stringConfigSet, stringConfigGet, stringConfigRewrite) |
| 2138 | }; |
| 2139 | conf.data.string = { |
| 2140 | &(config_addr), |
| 2141 | (defaultValue), |
| 2142 | (is_valid), |
| 2143 | (update), |
| 2144 | (empty_to_null), |
| 2145 | }; |
| 2146 | return conf; |
| 2147 | } |
| 2148 | |
| 2149 | constexpr standardConfig createSDSConfig(const char *name, const char *alias, unsigned flags, int empty_to_null, sds &config_addr, const char *defaultValue, int (*is_valid)(char*,const char**), int (*update)(char*,char*,const char**)) { |
| 2150 | standardConfig conf = { |