config_data.h
1#ifndef __KLEO__CHIASMUS_CONFIG_DATA_H__
2#define __KLEO__CHIASMUS_CONFIG_DATA_H__
3
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8struct kleo_chiasmus_config_data {
9 const char * name;
10 const char * description;
11 int level;
12 int type;
13 union {
14 const char * path; /* must be first, see config_data.c */
15 const char * string;
16 const char * url;
17 struct { unsigned int value : 1; unsigned int numTimesSet : 31; } boolean;
18 int integer;
19 unsigned int unsigned_integer;
20 } defaults;
21 unsigned int is_optional : 1;
22 unsigned int is_list : 1;
23 unsigned int is_runtime : 1;
24};
25
26extern const struct kleo_chiasmus_config_data kleo_chiasmus_config_entries[];
27extern const unsigned int kleo_chiasmus_config_entries_dim;
28
29#ifdef __cplusplus
30}
31#endif
32
33#endif /* __KLEO__CHIASMUS_CONFIG_DATA_H__ */
34