25 #ifndef INI_HANDLER_LINENO 26 #define INI_HANDLER_LINENO 0 30 #if INI_HANDLER_LINENO 31 typedef int (*ini_handler)(
void* user,
const char* section,
32 const char* name,
const char* value,
35 typedef int (*ini_handler)(
void* user,
const char* section,
36 const char* name,
const char* value);
40 typedef char* (*ini_reader)(
char* str,
int num,
void* stream);
55 int ini_parse(
const char* filename, ini_handler handler,
void* user);
59 int ini_parse_file(FILE* file, ini_handler handler,
void* user);
64 int ini_parse_stream(ini_reader reader,
void* stream, ini_handler handler,
70 int ini_parse_string(
const char*
string, ini_handler handler,
void* user);
74 int ini_parse_memory(
const char* mem,
size_t length,ini_handler handler,
void* user);
79 #ifndef INI_ALLOW_MULTILINE 80 #define INI_ALLOW_MULTILINE 1 86 #define INI_ALLOW_BOM 1 91 #ifndef INI_START_COMMENT_PREFIXES 92 #define INI_START_COMMENT_PREFIXES ";#" 98 #ifndef INI_ALLOW_INLINE_COMMENTS 99 #define INI_ALLOW_INLINE_COMMENTS 1 101 #ifndef INI_INLINE_COMMENT_PREFIXES 102 #define INI_INLINE_COMMENT_PREFIXES ";" 106 #ifndef INI_USE_STACK 107 #define INI_USE_STACK 1 113 #define INI_MAX_LINE 200 119 #ifndef INI_ALLOW_REALLOC 120 #define INI_ALLOW_REALLOC 0 125 #ifndef INI_INITIAL_ALLOC 126 #define INI_INITIAL_ALLOC 200 130 #ifndef INI_STOP_ON_FIRST_ERROR 131 #define INI_STOP_ON_FIRST_ERROR 0 137 #ifndef INI_CALL_HANDLER_ON_NEW_SECTION 138 #define INI_CALL_HANDLER_ON_NEW_SECTION 0 144 #ifndef INI_ALLOW_NO_VALUE 145 #define INI_ALLOW_NO_VALUE 0 152 #ifndef INI_CUSTOM_ALLOCATOR 153 #define INI_CUSTOM_ALLOCATOR 0