summaryrefslogtreecommitdiff
path: root/docs/examples/tutorial/clibraries/cqueue.pxd
blob: a657ae331472d484fa291779ed034e66108c339e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
cdef extern from "c-algorithms/src/queue.h":
    ctypedef struct Queue:
        pass
    ctypedef void* QueueValue

    Queue* queue_new()
    void queue_free(Queue* queue)

    int queue_push_head(Queue* queue, QueueValue data)
    QueueValue  queue_pop_head(Queue* queue)
    QueueValue queue_peek_head(Queue* queue)

    int queue_push_tail(Queue* queue, QueueValue data)
    QueueValue queue_pop_tail(Queue* queue)
    QueueValue queue_peek_tail(Queue* queue)

    bint queue_is_empty(Queue* queue)