deque_t * dequeCreate(int sizeHint)
Create a new deque with space reserved for at least sizeHint elements.
void * dequeGetFront(const deque_t *d)
Return the first element on a deque.
void * dequeGet(const deque_t *d, int i)
Return the i'th element on a queue.
int dequePopBack(deque_t *d)
Remove the last element of a queue.
int dequeRemove(deque_t *d, int i)
Remove an element at any position inside the deque.
int dequeLength(const deque_t *d)
Return the number of elements inside a deque.
int dequeInsert(deque_t *d, int i, void *p)
Insert an element at any position inside the deque.
int dequePopFront(deque_t *d)
Remove the last element of a queue.
void dequeDestroy(deque_t *d)
Destroy a deque created with dequeCreate().
int dequePushBack(deque_t *d, void *p)
Add an element to the "back" of a deque.
struct deque_t deque_t
Opaque type for a double-ended queue.
Definition: deque.h:29
void * dequeSet(deque_t *d, int i, void *p)
Change the value of the i'th element on a deque.
Larlib basic definitions.
void * dequeGetBack(const deque_t *d)
Return the last element on a deque.
int dequePushFront(deque_t *d, void *p)
Add an element on the "back" of a deque.