NEURON
hoclist.h File Reference

Go to the source code of this file.

Classes

struct  hoc_Item
 

Macros

#define ITEM0   nullptr
 
#define LIST0   nullptr
 
#define ITERATE(itm, lst)   for (itm = (lst)->next; itm != (lst); itm = itm->next)
 
#define SYM(q)   ((q)->element.sym)
 
#define STR(q)   ((q)->element.str)
 
#define ITM(q)   ((q)->element.itm)
 
#define LST(q)   ((q)->element.lst)
 
#define hocSEC(q)   ((q)->element.sec)
 
#define OBJ(q)   ((q)->element.obj)
 
#define VOIDITM(q)   ((q)->element.vd)
 
#define ITEM   2
 
#define LIST   3
 
#define VOIDPOINTER   4
 
#define Insertstr   insertstr
 
#define Insertsym   insertsym
 
#define Insertsec   insertsec
 
#define Linsertsym   linsertsym
 
#define Linsertstr   linsertstr
 
#define Lappendsym   lappendsym
 
#define Lappendstr   lappendstr
 
#define Lappenditem   lappenditem
 
#define Lappendlst   lappendlst
 
#define Lappendsec   lappendsec
 

Typedefs

using hoc_List = hoc_Item
 

Functions

constexpr auto range_sec (hoc_List *iterable)
 
char * hoc_l_stralloc (const char *, char *release)
 
hoc_Listhoc_l_newlist ()
 
hoc_Itemhoc_l_insertstr (hoc_Item *, const char *)
 
hoc_Itemhoc_l_insertsym (hoc_Item *, struct Symbol *)
 
hoc_Itemhoc_l_insertitem (hoc_Item *, hoc_Item *)
 
hoc_Itemhoc_l_insertlist (hoc_Item *, hoc_List *)
 
hoc_Itemhoc_l_insertsec (hoc_Item *, struct Section *)
 
hoc_Itemhoc_l_insertvoid (hoc_Item *, void *)
 
hoc_Itemhoc_l_linsertstr (hoc_List *, const char *)
 
hoc_Itemhoc_l_linsertsym (hoc_List *, struct Symbol *)
 
hoc_Itemhoc_l_lappendstr (hoc_List *, const char *)
 
hoc_Itemhoc_l_lappendsym (hoc_List *, struct Symbol *)
 
hoc_Itemhoc_l_lappenditem (hoc_List *, hoc_Item *)
 
hoc_Itemhoc_l_lappendlst (hoc_List *, hoc_List *)
 
hoc_Itemhoc_l_lappendsec (hoc_List *, struct Section *)
 
hoc_Itemhoc_l_lappendvoid (hoc_List *, void *)
 
hoc_Itemhoc_l_lappendobj (hoc_List *, struct Object *)
 
void hoc_l_freelist (hoc_List **)
 
hoc_Itemhoc_l_next (hoc_Item *)
 
hoc_Itemhoc_l_prev (hoc_Item *)
 
void hoc_l_delete (hoc_Item *)
 
void hoc_l_move (hoc_Item *, hoc_Item *, hoc_Item *)
 
void hoc_l_movelist (hoc_Item *, hoc_Item *, hoc_List *)
 
void hoc_l_replacstr (hoc_Item *, const char *)
 

Macro Definition Documentation

◆ hocSEC

#define hocSEC (   q)    ((q)->element.sec)

Definition at line 87 of file hoclist.h.

◆ Insertsec

#define Insertsec   insertsec

Definition at line 126 of file hoclist.h.

◆ Insertstr

#define Insertstr   insertstr

Definition at line 124 of file hoclist.h.

◆ Insertsym

#define Insertsym   insertsym

Definition at line 125 of file hoclist.h.

◆ ITEM

#define ITEM   2

Definition at line 92 of file hoclist.h.

◆ ITEM0

#define ITEM0   nullptr

Definition at line 75 of file hoclist.h.

◆ ITERATE

#define ITERATE (   itm,
  lst 
)    for (itm = (lst)->next; itm != (lst); itm = itm->next)

Definition at line 78 of file hoclist.h.

◆ ITM

#define ITM (   q)    ((q)->element.itm)

Definition at line 85 of file hoclist.h.

◆ Lappenditem

#define Lappenditem   lappenditem

Definition at line 131 of file hoclist.h.

◆ Lappendlst

#define Lappendlst   lappendlst

Definition at line 132 of file hoclist.h.

◆ Lappendsec

#define Lappendsec   lappendsec

Definition at line 133 of file hoclist.h.

◆ Lappendstr

#define Lappendstr   lappendstr

Definition at line 130 of file hoclist.h.

◆ Lappendsym

#define Lappendsym   lappendsym

Definition at line 129 of file hoclist.h.

◆ Linsertstr

#define Linsertstr   linsertstr

Definition at line 128 of file hoclist.h.

◆ Linsertsym

#define Linsertsym   linsertsym

Definition at line 127 of file hoclist.h.

◆ LIST

#define LIST   3

Definition at line 93 of file hoclist.h.

◆ LIST0

#define LIST0   nullptr

Definition at line 76 of file hoclist.h.

◆ LST

#define LST (   q)    ((q)->element.lst)

Definition at line 86 of file hoclist.h.

◆ OBJ

#define OBJ (   q)    ((q)->element.obj)

Definition at line 88 of file hoclist.h.

◆ STR

#define STR (   q)    ((q)->element.str)

Definition at line 84 of file hoclist.h.

◆ SYM

#define SYM (   q)    ((q)->element.sym)

Definition at line 83 of file hoclist.h.

◆ VOIDITM

#define VOIDITM (   q)    ((q)->element.vd)

Definition at line 89 of file hoclist.h.

◆ VOIDPOINTER

#define VOIDPOINTER   4

Definition at line 94 of file hoclist.h.

Typedef Documentation

◆ hoc_List

using hoc_List = hoc_Item

Definition at line 48 of file hoclist.h.

Function Documentation

◆ hoc_l_delete()

void hoc_l_delete ( hoc_Item )

◆ hoc_l_freelist()

void hoc_l_freelist ( hoc_List **  )

◆ hoc_l_insertitem()

hoc_Item* hoc_l_insertitem ( hoc_Item ,
hoc_Item  
)

◆ hoc_l_insertlist()

hoc_Item* hoc_l_insertlist ( hoc_Item ,
hoc_List  
)

◆ hoc_l_insertsec()

hoc_Item* hoc_l_insertsec ( hoc_Item ,
struct Section  
)

◆ hoc_l_insertstr()

hoc_Item* hoc_l_insertstr ( hoc_Item ,
const char *   
)

◆ hoc_l_insertsym()

hoc_Item* hoc_l_insertsym ( hoc_Item ,
struct Symbol  
)

◆ hoc_l_insertvoid()

hoc_Item* hoc_l_insertvoid ( hoc_Item ,
void *   
)

◆ hoc_l_lappenditem()

hoc_Item* hoc_l_lappenditem ( hoc_List ,
hoc_Item  
)

◆ hoc_l_lappendlst()

hoc_Item* hoc_l_lappendlst ( hoc_List ,
hoc_List  
)

◆ hoc_l_lappendobj()

hoc_Item* hoc_l_lappendobj ( hoc_List ,
struct Object  
)

◆ hoc_l_lappendsec()

hoc_Item* hoc_l_lappendsec ( hoc_List ,
struct Section  
)

◆ hoc_l_lappendstr()

hoc_Item* hoc_l_lappendstr ( hoc_List ,
const char *   
)

◆ hoc_l_lappendsym()

hoc_Item* hoc_l_lappendsym ( hoc_List ,
struct Symbol  
)

◆ hoc_l_lappendvoid()

hoc_Item* hoc_l_lappendvoid ( hoc_List ,
void *   
)

◆ hoc_l_linsertstr()

hoc_Item* hoc_l_linsertstr ( hoc_List ,
const char *   
)

◆ hoc_l_linsertsym()

hoc_Item* hoc_l_linsertsym ( hoc_List ,
struct Symbol  
)

◆ hoc_l_move()

void hoc_l_move ( hoc_Item ,
hoc_Item ,
hoc_Item  
)

◆ hoc_l_movelist()

void hoc_l_movelist ( hoc_Item ,
hoc_Item ,
hoc_List  
)

◆ hoc_l_newlist()

hoc_List* hoc_l_newlist ( )

◆ hoc_l_next()

hoc_Item* hoc_l_next ( hoc_Item )

◆ hoc_l_prev()

hoc_Item* hoc_l_prev ( hoc_Item )

◆ hoc_l_replacstr()

void hoc_l_replacstr ( hoc_Item ,
const char *   
)

◆ hoc_l_stralloc()

char* hoc_l_stralloc ( const char *  ,
char *  release 
)

◆ range_sec()

constexpr auto range_sec ( hoc_List iterable)
constexpr

Definition at line 50 of file hoclist.h.