/* WARNING: This file was generated by dkct. Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: test-dbi.ctr */ /** @file test-dbi.c The test-dbi module. */ #line 1 "test-dbi.ctr" #include "dk3all.h" #line 7 "test-dbi.ctr" static int traverse_database(void *obj, dk3_datum_t *key, dk3_datum_t *val) { int *iptr; iptr = (int *)obj; *iptr += 1; return 1; } static void count_elements(dk3_dbi_t *dbi, dk3_app_t *app) { int nelem = 0; dk3dbi_traverse(dbi, (void *)(&nelem), traverse_database); printf("Elements: %d\n", nelem); } static dkChar const keyname[] = { dkT("Test2") }; static dkChar const otherkey[] = { dkT("Test") }; static void run_for(dkChar const *dbname, dk3_app_t *app) { dkChar buffer[1024]; int ec = 0; dk3_dbi_t *dbi; #line 45 "test-dbi.ctr" dbi = dk3dbi_open_app( dbname, DK3_DB_TYPE_UNKNOWN, 0, &ec, app ); if(dbi) { count_elements(dbi, app); dk3dbi_delete_string(dbi, keyname); count_elements(dbi, app); if(dk3dbi_get_string(dbi, otherkey, buffer, DK3_SIZEOF(buffer,dkChar))) { printf("Test=\"%s\"\n", buffer); } dk3dbi_close(dbi); } #line 58 "test-dbi.ctr" } static dkChar const gn[] = { "test" }; DK3_MAIN { dk3_app_t *app; dkChar const * const *xargv; int xargc; #line 69 "test-dbi.ctr" #line 70 "test-dbi.ctr" app = dk3app_open_command(argc, (dkChar const * const *)argv, gn); if(app) { xargc = dk3app_get_argc(app); xargv = dk3app_get_argv(app); if(xargc > 1) { run_for(xargv[1], app); } dk3app_close(app); } #line 80 "test-dbi.ctr" #line 81 "test-dbi.ctr" exit(0); }