6 typedef uint64_t xqindex;
13 XPTR_TYPE(xqindex) queue;
17 xqindex * xq_alloc_empty ( struct xq * xq,
20 void xq_init_empty ( struct xq * xq,
24 xqindex * xq_alloc_map ( struct xq * xq,
27 xqindex (* mapfn ) (xqindex) );
29 void xq_init_map ( struct xq * xq,
32 xqindex (* mapfn ) (xqindex),
35 xqindex * xq_alloc_seq ( struct xq * xq,
39 void xq_init_seq ( struct xq * xq,
44 void xq_free ( struct xq * xq );
46 xqindex __xq_append_head( struct xq * xq,
49 xqindex xq_append_head ( struct xq * xq,
53 xqindex __xq_pop_head ( struct xq * xq );
54 xqindex xq_pop_head ( struct xq * xq,
57 xqindex __xq_append_tail( struct xq * xq,
60 xqindex xq_append_tail ( struct xq * xq,
65 xqindex __xq_peek_head ( struct xq * xq);
67 xqindex xq_peek_head ( struct xq * xq,
70 xqindex __xq_peek_tail ( struct xq * xq);
72 xqindex xq_peek_tail ( struct xq * xq,
75 xqindex __xq_pop_tail ( struct xq * xq );
77 xqindex xq_pop_tail ( struct xq * xq,
80 int xq_head_to_tail ( struct xq * hq,
85 xqindex xq_size ( struct xq * xq );
87 xqindex xq_count ( struct xq * xq );
89 void xq_print ( struct xq * xq );
91 int __xq_check ( struct xq * xq,
94 int xq_check ( struct xq * xq,
98 xqindex __xq_resize ( struct xq * xq,
101 xqindex xq_resize ( struct xq * xq,