satsolver  0.17.2
Classes | Typedefs | Functions
queue.h File Reference
#include "pooltypes.h"

Go to the source code of this file.

Classes

struct  _Queue
 

Typedefs

typedef struct _Queue Queue
 

Functions

void queue_alloc_one (Queue *q)
 
void queue_alloc_one_head (Queue *q)
 
static void queue_empty (Queue *q)
 
static Id queue_shift (Queue *q)
 
static Id queue_pop (Queue *q)
 
static void queue_unshift (Queue *q, Id id)
 
static void queue_push (Queue *q, Id id)
 
static void queue_pushunique (Queue *q, Id id)
 
static void queue_push2 (Queue *q, Id id1, Id id2)
 
static void queue_truncate (Queue *q, int n)
 
void queue_init (Queue *q)
 
void queue_init_buffer (Queue *q, Id *buf, int size)
 
void queue_init_clone (Queue *t, Queue *s)
 
void queue_free (Queue *q)
 
void queue_insert (Queue *q, int pos, Id id)
 
void queue_insert2 (Queue *q, int pos, Id id1, Id id2)
 
void queue_insertn (Queue *q, int pos, int n)
 
void queue_delete (Queue *q, int pos)
 
void queue_delete2 (Queue *q, int pos)
 
void queue_deleten (Queue *q, int pos, int n)
 

Typedef Documentation

typedef struct _Queue Queue

Function Documentation

void queue_alloc_one ( Queue q)
void queue_alloc_one_head ( Queue q)

Definition at line 91 of file queue.c.

References _Queue::alloc, _Queue::count, _Queue::elements, EXTRA_SPACE_HEAD, _Queue::left, and queue_alloc_one().

Referenced by queue_unshift().

static void queue_empty ( Queue q)
inlinestatic
static Id queue_shift ( Queue q)
inlinestatic
static Id queue_pop ( Queue q)
inlinestatic

Definition at line 53 of file queue.h.

References _Queue::count, _Queue::elements, and _Queue::left.

Referenced by addcycleedges(), and transaction_order().

static void queue_unshift ( Queue q,
Id  id 
)
inlinestatic

Definition at line 62 of file queue.h.

References _Queue::alloc, _Queue::count, _Queue::elements, and queue_alloc_one_head().

Referenced by transaction_classify().

static void queue_push ( Queue q,
Id  id 
)
inlinestatic
static void queue_pushunique ( Queue q,
Id  id 
)
inlinestatic
static void queue_push2 ( Queue q,
Id  id1,
Id  id2 
)
inlinestatic
static void queue_truncate ( Queue q,
int  n 
)
inlinestatic

Definition at line 97 of file queue.h.

References _Queue::count, and _Queue::left.

Referenced by jobtodisablelist(), and transaction_add_obsoleted().

void queue_init ( Queue q)
void queue_init_buffer ( Queue q,
Id buf,
int  size 
)
void queue_init_clone ( Queue t,
Queue s 
)
void queue_free ( Queue q)
void queue_insert ( Queue q,
int  pos,
Id  id 
)

Definition at line 104 of file queue.c.

References _Queue::count, _Queue::elements, and queue_push().

void queue_insert2 ( Queue q,
int  pos,
Id  id1,
Id  id2 
)

Definition at line 126 of file queue.c.

References _Queue::count, _Queue::elements, and queue_push().

void queue_insertn ( Queue q,
int  pos,
int  n 
)
void queue_delete ( Queue q,
int  pos 
)

Definition at line 115 of file queue.c.

References _Queue::count, _Queue::elements, and _Queue::left.

void queue_delete2 ( Queue q,
int  pos 
)

Definition at line 139 of file queue.c.

References _Queue::count, _Queue::elements, and _Queue::left.

void queue_deleten ( Queue q,
int  pos,
int  n 
)

Definition at line 180 of file queue.c.

References _Queue::count, _Queue::elements, and _Queue::left.