51 lines
1.1 KiB
C
51 lines
1.1 KiB
C
#include <stdlib.h>
|
|
#include <string.h>
|
|
#include <stdio.h>
|
|
#include <stdint.h>
|
|
|
|
#include "fasthash.h"
|
|
#include "treetrie.h"
|
|
|
|
int main(int argc, char *argv[]) {
|
|
tt_arena_t a;
|
|
int i, outer;
|
|
tt_node_idx_t prev = TT_EMPTY;
|
|
|
|
setbuf(stdout, NULL);
|
|
tt_arena_init(&a);
|
|
|
|
for (outer = 0; outer < 10; outer++) {
|
|
/* printf("---------------------------------------- grab/drop of %d\n", prev); */
|
|
tt_grab(&a, prev);
|
|
tt_drop(&a, prev);
|
|
/* tt_arena_flush(&a); */
|
|
/* printf("---------------------------------------- AFTER DROP of %d:\n", prev); */
|
|
/* tt_dump_arena(&a); */
|
|
prev = TT_EMPTY;
|
|
/* printf("======================================== LOOP ITERATION %d\n", outer); */
|
|
for (i = 0; i < 100; i++) {
|
|
tt_node_idx_t leaf = tt_arena_cons(&a,
|
|
TT_TAG_LEAF,
|
|
0,
|
|
TT_OK,
|
|
1001);
|
|
tt_node_idx_t curr = tt_arena_cons(&a,
|
|
TT_TAG_NODE,
|
|
0,
|
|
leaf,
|
|
prev);
|
|
/* tt_dump_arena(&a); */
|
|
prev = curr;
|
|
}
|
|
}
|
|
|
|
/* tt_dump_arena(&a); */
|
|
tt_grab(&a, prev);
|
|
tt_drop(&a, prev);
|
|
/* tt_arena_flush(&a); */
|
|
tt_dump_arena_summary(&a);
|
|
|
|
tt_arena_done(&a);
|
|
return EXIT_SUCCESS;
|
|
}
|