81 #define econf_setValue(kf, group, key, value) (( \    83     int: econf_setIntValue, \    84     long: econf_setInt64Value, \    85     unsigned int: econf_setUIntValue, \    86     unsigned long: econf_setUInt64Value, \    87     float: econf_setFloatValue, \    88     double: econf_setDoubleValue, \    89     char*: econf_setStringValue, void*: econf_setStringValue)) \    90 (kf, group, key, value))    98 #define econf_free(value) (( \   100     econf_file*: econf_freeFile , \   101     char**: econf_freeArray)) \   133                                     const char *delim, 
const char *comment);
   195                                           const char *usr_conf_dir,
   196                                           const char *etc_conf_dir,
   197                                           const char *project_name,
   198                                           const char *config_suffix,
   200                                           const char *comment);
   220                                        const char *usr_conf_dir,
   221                                        const char *etc_conf_dir,
   222                                        const char *project_name,
   223                                        const char *config_suffix,
   225                                        const char *comment);
   264                                       const char *file_name);
 
General syntax error in input file. 
struct econf_file econf_file
econf_err econf_setFloatValue(econf_file *kf, const char *group, const char *key, float value)
Set float value for given group/key. 
econf_err econf_readDirs(econf_file **key_file, const char *usr_conf_dir, const char *etc_conf_dir, const char *project_name, const char *config_suffix, const char *delim, const char *comment)
Evaluating key/values of a given configuration by reading and merging all needed/available files in t...
econf_err econf_setDoubleValue(econf_file *kf, const char *group, const char *key, double value)
Set double value for given group/key. 
econf_err econf_getFloatValueDef(econf_file *kf, const char *group, const char *key, float *result, float def)
Evaluating float value for given group/key. 
econf_err econf_getUInt64Value(econf_file *kf, const char *group, const char *key, uint64_t *result)
Evaluating uint64 value for given group/key. 
void econf_errLocation(char **filename, uint64_t *line_nr)
Info about where the error has happened. 
char * econf_getPath(econf_file *kf)
Evaluating path name. 
econf_err econf_getUInt64ValueDef(econf_file *kf, const char *group, const char *key, uint64_t *result, uint64_t def)
Evaluating uint64 value for given group/key. 
econf_err econf_getUIntValue(econf_file *kf, const char *group, const char *key, uint32_t *result)
Evaluating uint32 value for given group/key. 
void econf_freeArray(char **array)
Free an array of type char** created by econf_getGroups() or econf_getKeys(). 
void econf_freeFile(econf_file *key_file)
Free memory allocated by e.g. 
econf_err econf_getBoolValue(econf_file *kf, const char *group, const char *key, bool *result)
Evaluating bool value for given group/key. 
econf_err econf_getGroups(econf_file *kf, size_t *length, char ***groups)
Evaluating all group entries. 
econf_err econf_getInt64ValueDef(econf_file *kf, const char *group, const char *key, int64_t *result, int64_t def)
Evaluating int64 value for given group/key. 
econf_err econf_getDoubleValueDef(econf_file *kf, const char *group, const char *key, double *result, double def)
Evaluating double value for given group/key. 
econf_err econf_readDirsHistory(econf_file ***key_files, size_t *size, const char *usr_conf_dir, const char *etc_conf_dir, const char *project_name, const char *config_suffix, const char *delim, const char *comment)
Evaluating key/values for every given configuration files in two different directories (normally in /...
econf_err econf_getStringValue(econf_file *kf, const char *group, const char *key, char **result)
Evaluating string value for given group/key. 
econf_err econf_getKeys(econf_file *kf, const char *group, size_t *length, char ***keys)
Evaluating all keys. 
econf_err econf_getFloatValue(econf_file *kf, const char *group, const char *key, float *result)
Evaluating float value for given group/key. 
econf_err econf_getStringValueDef(econf_file *kf, const char *group, const char *key, char **result, char *def)
Evaluating string value for given group/key. 
econf_err econf_writeFile(econf_file *key_file, const char *save_to_dir, const char *file_name)
Write content of a econf_file struct to specified location. 
econf_err econf_setInt64Value(econf_file *kf, const char *group, const char *key, int64_t value)
Set int64 value for given group/key. 
General purpose success code. 
econf_err econf_getInt64Value(econf_file *kf, const char *group, const char *key, int64_t *result)
Evaluating int64 value for given group/key. 
econf_err econf_setUIntValue(econf_file *kf, const char *group, const char *key, uint32_t value)
Set uint32 value for given group/key. 
econf_err econf_setStringValue(econf_file *kf, const char *group, const char *key, const char *value)
Set string value for given group/key. 
econf_err econf_newKeyFile(econf_file **result, char delimiter, char comment)
Create a new econf_file object. 
econf_err econf_setUInt64Value(econf_file *kf, const char *group, const char *key, uint64_t value)
Set uint64 value for given group/key. 
econf_err econf_getUIntValueDef(econf_file *kf, const char *group, const char *key, uint32_t *result, uint32_t def)
Evaluating uint32 value for given group/key. 
econf_err econf_setBoolValue(econf_file *kf, const char *group, const char *key, const char *value)
Set bool value for given group/key. 
econf_err econf_getIntValueDef(econf_file *kf, const char *group, const char *key, int32_t *result, int32_t def)
Evaluating int32 value for given group/key. 
econf_err econf_getBoolValueDef(econf_file *kf, const char *group, const char *key, bool *result, bool def)
Evaluating bool value for given group/key. 
econf_err econf_readFile(econf_file **result, const char *file_name, const char *delim, const char *comment)
Process the file of the given file_name and save its contents into key_file object. 
econf_err econf_newIniFile(econf_file **result)
Create a new econf_file object in IniFile format. 
Missing closing section bracket. 
const char * econf_errString(const econf_err error)
Convert an econf_err type to a string. 
econf_err
libeconf error codes 
econf_err econf_getIntValue(econf_file *kf, const char *group, const char *key, int32_t *result)
Evaluating int32 value for given group/key. 
econf_err econf_mergeFiles(econf_file **merged_file, econf_file *usr_file, econf_file *etc_file)
Merge the contents of two key_files objects. 
econf_err econf_getDoubleValue(econf_file *kf, const char *group, const char *key, double *result)
Evaluating double value for given group/key. 
econf_err econf_setIntValue(econf_file *kf, const char *group, const char *key, int32_t value)
Set int32 value for given group/key. 
Error creating or writing to a file.