#ifndef BH_QUEUE_H #define BH_QUEUE_H #include "bh.h" typedef struct bh_queue_s bh_queue_t; bh_queue_t *bh_queue_new(void); void bh_queue_free(bh_queue_t *queue); void bh_queue_clear(bh_queue_t *queue); int bh_queue_reserve(bh_queue_t *queue, size_t size); int bh_queue_insert(bh_queue_t *queue, void *value); void bh_queue_remove(bh_queue_t *queue); void *bh_queue_front(bh_queue_t *queue); int bh_queue_empty(bh_queue_t *queue); size_t bh_queue_size(bh_queue_t *queue); size_t bh_queue_capacity(bh_queue_t *queue); void *bh_queue_iter_next(bh_queue_t *queue, void *iter); void *bh_queue_iter_value(void *iter); #endif /* BH_QUEUE_H */