diff options
author | bpc2003 <wpesfriendnva@gmail.com> | 2025-05-23 22:19:18 -0400 |
---|---|---|
committer | bpc2003 <wpesfriendnva@gmail.com> | 2025-05-23 22:19:18 -0400 |
commit | 5f5c0ec887a4cd7640261250d638300a3ea90d02 (patch) | |
tree | 81a0af3a98183cc053fac365a67964a057ad50d7 /src/include/xdbms.c | |
parent | b28d02537cd3c2e39dc4db9d5f53a59b694dda13 (diff) |
Get started on public API
Diffstat (limited to 'src/include/xdbms.c')
-rw-r--r-- | src/include/xdbms.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/include/xdbms.c b/src/include/xdbms.c new file mode 100644 index 0000000..eb6193e --- /dev/null +++ b/src/include/xdbms.c @@ -0,0 +1,31 @@ +#include <stdio.h> +#include <stdlib.h> + +#include "engine/engine.h" +#include "xml/xml.h" +#include "xdbms.h" + +static tablist_t *db; + +int xdb_init(char *filename) { + if (filename == NULL) + fprintf(stderr, "Warning: running in-memory database\n"); + db = readdb(filename); + if (db == NULL) { + fprintf(stderr, "Error: Invalid DB file\n"); + return 1; + } + return 0; +} + +void xdb_close(void) { + delkeys(db, -1, NULL, 0); + free(db); +} + +char *xdb_stmt(char *stmt) { + map_t *decoded = decode(stmt); + printf("%s\n", encode(decoded)); + freemap(decoded); + return NULL; +} |