36 lines
718 B
C
36 lines
718 B
C
#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 */
|