Back to index

lightning-sunbird  0.9+nobinonly
Classes | Defines | Typedefs | Functions
jar-ds.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ZZListStr

Defines

#define ZZ_InitList(lst)
#define ZZ_ListEmpty(lst)   ((lst)->link.next == &(lst)->link)
#define ZZ_ListHead(lst)   ((lst)->link.next)
#define ZZ_ListTail(lst)   ((lst)->link.prev)
#define ZZ_ListIterDone(lst, lnk)   ((lnk) == &(lst)->link)
#define ZZ_AppendLink(lst, lnk)
#define ZZ_InsertLink(lst, lnk)
#define ZZ_RemoveLink(lnk)

Typedefs

typedef struct ZZLinkStr
typedef struct ZZListStr

Functions

ZZLink * ZZ_NewLink (JAR_Item *thing)
void ZZ_DestroyLink (ZZLink *link)
ZZList * ZZ_NewList (void)
void ZZ_DestroyList (ZZList *list)

Class Documentation

struct ZZLinkStr

Definition at line 48 of file jar-ds.h.

Collaboration diagram for ZZLinkStr:
Class Members
ZZLink * next
ZZLink * prev
JAR_Item * thing
struct ZZListStr

Definition at line 55 of file jar-ds.h.

Class Members
ZZLink link

Define Documentation

#define ZZ_AppendLink (   lst,
  lnk 
)
Value:
{                               \
    (lnk)->next = &(lst)->link;        \
    (lnk)->prev = (lst)->link.prev; \
    (lst)->link.prev->next = (lnk); \
    (lst)->link.prev = (lnk);          \
}

Definition at line 79 of file jar-ds.h.

#define ZZ_InitList (   lst)
Value:
{                                \
    (lst)->link.next = &(lst)->link; \
    (lst)->link.prev = &(lst)->link; \
    (lst)->link.thing = 0;       \
}

Definition at line 60 of file jar-ds.h.

#define ZZ_InsertLink (   lst,
  lnk 
)
Value:
{                               \
    (lnk)->next = (lst)->link.next; \
    (lnk)->prev = &(lst)->link;        \
    (lst)->link.next->prev = (lnk); \
    (lst)->link.next = (lnk);          \
}

Definition at line 87 of file jar-ds.h.

#define ZZ_ListEmpty (   lst)    ((lst)->link.next == &(lst)->link)

Definition at line 67 of file jar-ds.h.

#define ZZ_ListHead (   lst)    ((lst)->link.next)

Definition at line 70 of file jar-ds.h.

#define ZZ_ListIterDone (   lst,
  lnk 
)    ((lnk) == &(lst)->link)

Definition at line 76 of file jar-ds.h.

#define ZZ_ListTail (   lst)    ((lst)->link.prev)

Definition at line 73 of file jar-ds.h.

#define ZZ_RemoveLink (   lnk)
Value:
{                                \
    (lnk)->next->prev = (lnk)->prev; \
    (lnk)->prev->next = (lnk)->next; \
    (lnk)->next = 0;             \
    (lnk)->prev = 0;             \
}

Definition at line 95 of file jar-ds.h.


Typedef Documentation

typedef struct ZZLinkStr

Definition at line 41 of file jar-ds.h.

typedef struct ZZListStr

Definition at line 42 of file jar-ds.h.


Function Documentation

void ZZ_DestroyLink ( ZZLink *  link)

Definition at line 65 of file jar-ds.c.

  {
  PORT_Free (link);
  }

Here is the call graph for this function:

Here is the caller graph for this function:

void ZZ_DestroyList ( ZZList *  list)

Definition at line 70 of file jar-ds.c.

  {
  PORT_Free (list);
  }

Here is the call graph for this function:

Here is the caller graph for this function:

ZZLink* ZZ_NewLink ( JAR_Item thing)

Definition at line 53 of file jar-ds.c.

  {
  ZZLink *link;

  link = (ZZLink *) PORT_ZAlloc (sizeof (ZZLink));

  if (link)
    link->thing = thing;
 
  return link;
  }

Here is the call graph for this function:

Here is the caller graph for this function:

ZZList* ZZ_NewList ( void  )

Definition at line 41 of file jar-ds.c.

  {
  ZZList *list;

  list = (ZZList *) PORT_ZAlloc (sizeof (ZZList));

  if (list)
    ZZ_InitList (list);

  return list;
  }

Here is the call graph for this function:

Here is the caller graph for this function: