libgpac
Documentation of the core library of GPAC
src/quickjs/list.h File Reference
#include <stddef.h>
+ Include dependency graph for src/quickjs/list.h:
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  list_head
 

Macros

#define LIST_HEAD_INIT(el)   { &(el), &(el) }
 
#define list_entry(el, type, member)    ((type *)((uint8_t *)(el) - offsetof(type, member)))
 
#define list_for_each(el, head)    for(el = (head)->next; el != (head); el = el->next)
 
#define list_for_each_safe(el, el1, head)
 
#define list_for_each_prev(el, head)    for(el = (head)->prev; el != (head); el = el->prev)
 
#define list_for_each_prev_safe(el, el1, head)
 

Functions

static void init_list_head (struct list_head *head)
 
static void __list_add (struct list_head *el, struct list_head *prev, struct list_head *next)
 
static void list_add (struct list_head *el, struct list_head *head)
 
static void list_add_tail (struct list_head *el, struct list_head *head)
 
static void list_del (struct list_head *el)
 
static int list_empty (struct list_head *el)
 

Data Structure Documentation

◆ list_head

struct list_head
+ Collaboration diagram for list_head:
Data Fields
struct list_head * prev
struct list_head * next

Macro Definition Documentation

◆ LIST_HEAD_INIT

#define LIST_HEAD_INIT (   el)    { &(el), &(el) }

◆ list_entry

#define list_entry (   el,
  type,
  member 
)     ((type *)((uint8_t *)(el) - offsetof(type, member)))

◆ list_for_each

#define list_for_each (   el,
  head 
)     for(el = (head)->next; el != (head); el = el->next)

◆ list_for_each_safe

#define list_for_each_safe (   el,
  el1,
  head 
)
Value:
for(el = (head)->next, el1 = el->next; el != (head); \
el = el1, el1 = el->next)

◆ list_for_each_prev

#define list_for_each_prev (   el,
  head 
)     for(el = (head)->prev; el != (head); el = el->prev)

◆ list_for_each_prev_safe

#define list_for_each_prev_safe (   el,
  el1,
  head 
)
Value:
for(el = (head)->prev, el1 = el->prev; el != (head); \
el = el1, el1 = el->prev)

Function Documentation

◆ init_list_head()

static void init_list_head ( struct list_head head)
static
+ Here is the caller graph for this function:

◆ __list_add()

static void __list_add ( struct list_head el,
struct list_head prev,
struct list_head next 
)
static
+ Here is the caller graph for this function:

◆ list_add()

static void list_add ( struct list_head el,
struct list_head head 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ list_add_tail()

static void list_add_tail ( struct list_head el,
struct list_head head 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ list_del()

static void list_del ( struct list_head el)
static
+ Here is the caller graph for this function:

◆ list_empty()

static int list_empty ( struct list_head el)
static
+ Here is the caller graph for this function: