libircbot
library providing a framework for implementing an IRC bot
Loading...
Searching...
No Matches
IBQueue Class Reference

A simple queue of objects. More...

#include <ircbot/queue.h>

Public Member Functions

IBQueueIBQueue_create (void)
 IBQueue default constructor. More...
 
void IBQueue_enqueue (IBQueue *self, void *obj, void(*deleter)(void *))
 Enqueue an object. More...
 
void * IBQueue_dequeue (IBQueue *self)
 Dequeue the oldest object. More...
 
void IBQueue_destroy (IBQueue *self)
 IBQueue destructor. More...
 

Detailed Description

A simple queue of objects.

Member Function Documentation

◆ IBQueue_create()

IBQueue * IBQueue_create ( void  )

IBQueue default constructor.

Creates a new IBQueue

Returns
a newly created IBQueue

◆ IBQueue_dequeue()

void * IBQueue_dequeue ( IBQueue self)

Dequeue the oldest object.

The object will not be destroyed, so it can be used by the caller.

Parameters
selfthe IBQueue
Returns
the dequeued object, or NULL if the IBQueue was empty

◆ IBQueue_destroy()

void IBQueue_destroy ( IBQueue self)

IBQueue destructor.

All still queued objects that have a deleter attached are also destroyed.

Parameters
selfthe IBQueue

◆ IBQueue_enqueue()

void IBQueue_enqueue ( IBQueue self,
void *  obj,
void(*)(void *)  deleter 
)

Enqueue an object.

Parameters
selfthe IBQueue
objthe object to enqueue
deleteroptional function to destroy the object

The documentation for this class was generated from the following file: