struct node_t *n, *next;
if (!queue)
- {
- return ERROR;
- }
+ return ERROR;
n = queue->head;
struct node_t *n;
if (!queue || !item)
- {
- return ERROR;
- }
+ return ERROR;
if (!(n = node_create ()))
- {
- return ERROR;
- }
+ return ERROR;
n->item = item;
++queue->size;
struct node_t *n, *prev;
if (!queue || !item)
- {
- return ERROR;
- }
+ return ERROR;
if (!(n = queue->head))
- {
- return ERROR;
- }
+ return ERROR;
prev = NULL;
}
if (!n) /* not found */
- {
- return ERROR;
- }
+ return ERROR;
if (prev)
- {
- prev->next = n->next;
- }
+ prev->next = n->next;
if (queue->head == n)
- {
- queue->head = n->next;
- }
+ queue->head = n->next;
if (queue->tail == n)
- {
- queue->tail = prev;
- }
+ queue->tail = prev;
if (queue->iterator == n)
- {
- queue->iterator = n->next;
- }
+ queue->iterator = n->next;
--queue->size;
node_destroy (n);
struct node_t *n;
if (!queue || !item)
- {
- return false;
- }
+ return false;
if (!(n = queue->head))
- {
- return false;
- }
+ return false;
while (n->item != item && (n = n->next))
;
queue_size (struct queue_t *queue)
{
if (!queue)
- {
- return ERROR;
- }
+ return ERROR;
return queue->size;
}
queue_head (struct queue_t *queue)
{
if (!queue || !queue->head)
- {
- return NULL;
- }
+ return NULL;
queue->iterator = queue->head;
queue_next (struct queue_t *queue)
{
if (!queue || !queue->iterator)
- {
- return NULL;
- }
+ return NULL;
queue->iterator = queue->iterator->next;
if (!queue->iterator)
- {
- return NULL;
- }
+ return NULL;
return queue->iterator->item;
}
queue_item (struct queue_t *queue)
{
if (!queue || !queue->iterator)
- {
- return NULL;
- }
+ return NULL;
return queue->iterator->item;
}
struct node_t *n;
if (!name)
- {
- return;
- }
+ return;
printf ("%s: ", name);
for (n = queue->head; n; n = n->next)
{
if (func)
- {
- func (n->item);
- }
+ func (n->item);
else
- {
- fputs ("undef", stdout);
- }
+ fputs ("undef", stdout);
putchar (' ');
}