r6:Function:queue dequeue

From liblfds.org
Jump to: navigation, search

Source Files

/src/queue/queue_queue.c
/inc/liblfds.h

Prototype

int queue_dequeue( struct queue_state *qs, void **user_data );

Parameters

struct queue_state *qs

A queue state as allocated by queue_new.

void **user_data

The address of a pointer into which the user data will be placed. On an unsuccessful dequeue (which occurs if and only if the queue is empty), *user_data is not modified, as NULL is a valid user data value.

Return Value

Returns 1 if an element was dequeued, returns 0 if an element was no dequeued. The queue being empty is the only situation in which dequeuing does not occur. Note that on an unsuccessful dequeue, *user_data is untouched; it is not set to NULL, since NULL is a valid user data value. Only the return value indicates whether or not the dequeue was successful.

Notes

No notes.

See Also