Derive-C
Loading...
Searching...
No Matches
deque.c
Go to the documentation of this file.
1
3
4#define CAPACITY 300000
5#define NAME bump_alloc
7
8#define ITEM int
9#define ALLOC bump_alloc
10#define NAME int_queue
12
14 bump_alloc_buffer buffer = {};
15 bump_alloc alloc = bump_alloc_new(&buffer);
16
17 int_queue q = int_queue_new_with_capacity(4, &alloc);
18
19 int_queue_push_back(&q, 1);
20 int_queue_push_back(&q, 2);
21 int_queue_push_back(&q, 3);
22
23 DC_ASSERT(int_queue_size(&q) == 3);
24
25 int_queue_debug(&q, dc_debug_fmt_new(), stdout);
26
27 DC_ASSERT(int_queue_pop_front(&q) == 1);
28
29 DC_ASSERT(int_queue_pop_back(&q) == 3);
30
31 int_queue_debug(&q, dc_debug_fmt_new(), stdout);
32
33 int_queue_delete(&q);
34}
35
36int main() { basic_example(); }
char buffer[CAPACITY]
Definition template.h:34
void basic_example()
Definition deque.c:13
int main()
Definition deque.c:36
static dc_debug_fmt dc_debug_fmt_new()
Definition fmt.h:14
#define DC_ASSERT(expr,...)
Definition panic.h:36