00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _SQUAREBALL_CONFIGPARSER_H
00010 #define _SQUAREBALL_CONFIGPARSER_H
00011
00012 #include <stdlib.h>
00013 #include "sb-error.h"
00014 #include "sb-slist.h"
00015 #include "sb-trie.h"
00016
00027 typedef struct _sb_config_t sb_config_t;
00028
00039 sb_config_t* sb_config_parse(const char *src, size_t src_len,
00040 const char *list_sections[], sb_error_t **err);
00041
00049 char** sb_config_list_sections(sb_config_t *config);
00050
00060 char** sb_config_list_keys(sb_config_t *config, const char *section);
00061
00071 const char* sb_config_get(sb_config_t *config, const char *section,
00072 const char *key);
00073
00086 const char* sb_config_get_with_default(sb_config_t *config, const char *section,
00087 const char *key, const char *default_);
00088
00100 char** sb_config_get_list(sb_config_t *config, const char *section);
00101
00107 void sb_config_free(sb_config_t *config);
00108
00111 #endif