Add basic ast_to_value, make POSIX optional

Signed-off-by: Slendi <slendi@socopon.com>
This commit is contained in:
2025-07-25 23:21:33 +03:00
parent 3fdda1bbaa
commit a35a476654
5 changed files with 173 additions and 12 deletions

View File

@@ -20,9 +20,21 @@ typedef struct dcfg_StringView {
typedef void *(*dcfg_AllocFn)(size_t); // This should automatically zero memory.
typedef void (*dcfg_FreeFn)(void *);
typedef char *(*dcfg_RealpathFn)(char const *);
typedef void *(*dcfg_FopenFn)(char const *, char const *);
typedef int (*dcfg_FseekFn)(void *, size_t, int);
typedef long (*dcfg_FtellFn)(void *);
typedef struct dcfg_InstanceCreateInfo {
// Default using libc
dcfg_AllocFn alloc;
dcfg_FreeFn free;
// If POSIX support is enabled, all of those are defined if NULL.
dcfg_RealpathFn realpath;
dcfg_FopenFn fopen;
dcfg_FseekFn fseek;
dcfg_FtellFn ftell;
} dcfg_InstanceCreateInfo;
typedef enum dcfg_ValueKind {