Double-ended Queues

Name

Double-ended Queues -- 

Synopsis


#include <glib.h>


struct      GQueue;
GQueue*     g_queue_new                     (void);
void        g_queue_free                    (GQueue *queue);
void        g_queue_push_head               (GQueue *queue,
                                             gpointer data);
void        g_queue_push_tail               (GQueue *queue,
                                             gpointer data);
gpointer    g_queue_pop_head                (GQueue *queue);
gpointer    g_queue_pop_tail                (GQueue *queue);
gboolean    g_queue_is_empty                (GQueue *queue);
gpointer    g_queue_peek_head               (GQueue *queue);
gpointer    g_queue_peek_tail               (GQueue *queue);
void        g_queue_push_head_link          (GQueue *queue,
                                             GList *link);
void        g_queue_push_tail_link          (GQueue *queue,
                                             GList *link);
GList*      g_queue_pop_head_link           (GQueue *queue);
GList*      g_queue_pop_tail_link           (GQueue *queue);

Description

Details

struct GQueue

struct GQueue
{
  GList *head;
  GList *tail;
  guint  length;
};


g_queue_new ()

GQueue*     g_queue_new                     (void);

Returns : 


g_queue_free ()

void        g_queue_free                    (GQueue *queue);

queue : 


g_queue_push_head ()

void        g_queue_push_head               (GQueue *queue,
                                             gpointer data);

queue : 
data : 


g_queue_push_tail ()

void        g_queue_push_tail               (GQueue *queue,
                                             gpointer data);

queue : 
data : 


g_queue_pop_head ()

gpointer    g_queue_pop_head                (GQueue *queue);

queue : 
Returns : 


g_queue_pop_tail ()

gpointer    g_queue_pop_tail                (GQueue *queue);

queue : 
Returns : 


g_queue_is_empty ()

gboolean    g_queue_is_empty                (GQueue *queue);

queue : 
Returns : 


g_queue_peek_head ()

gpointer    g_queue_peek_head               (GQueue *queue);

queue : 
Returns : 


g_queue_peek_tail ()

gpointer    g_queue_peek_tail               (GQueue *queue);

queue : 
Returns : 


g_queue_push_head_link ()

void        g_queue_push_head_link          (GQueue *queue,
                                             GList *link);

queue : 
link : 


g_queue_push_tail_link ()

void        g_queue_push_tail_link          (GQueue *queue,
                                             GList *link);

queue : 
link : 


g_queue_pop_head_link ()

GList*      g_queue_pop_head_link           (GQueue *queue);

queue : 
Returns : 


g_queue_pop_tail_link ()

GList*      g_queue_pop_tail_link           (GQueue *queue);

queue : 
Returns :