Lines Matching refs:queue
29 void initqueue(struct Queue* queue) { in initqueue() argument
31 queue->head = NULL; in initqueue()
32 queue->tail = NULL; in initqueue()
33 queue->count = 0; in initqueue()
36 int isempty(struct Queue* queue) { in isempty() argument
38 return (queue->head == NULL); in isempty()
41 void* dequeue(struct Queue* queue) { in dequeue() argument
45 dropbear_assert(!isempty(queue)); in dequeue()
47 ret = queue->head->item; in dequeue()
48 oldhead = queue->head; in dequeue()
51 queue->head = oldhead->link; in dequeue()
53 queue->head = NULL; in dequeue()
54 queue->tail = NULL; in dequeue()
59 queue->count--; in dequeue()
63 void *examine(struct Queue* queue) { in examine() argument
65 dropbear_assert(!isempty(queue)); in examine()
66 return queue->head->item; in examine()
69 void enqueue(struct Queue* queue, void* item) { in enqueue() argument
79 if (queue->tail != NULL) { in enqueue()
80 queue->tail->link = newlink; in enqueue()
82 queue->tail = newlink; in enqueue()
84 if (queue->head == NULL) { in enqueue()
85 queue->head = newlink; in enqueue()
87 queue->count++; in enqueue()