Lines Matching defs:list
31 Dtlink_t* link; /* list of objects */
41 Dtlist_t *list = (Dtlist_t*)dt->data;
43 if(!here && !(here = list->link) )
71 Dtlist_t *list = (Dtlist_t*)dt->data;
73 if((lnk = list->link) )
76 list->here = lnk; /* finger points to this */
92 Dtlist_t *list = (Dtlist_t*)dt->data;
94 lnk = list->link;
95 list->link = list->here = NIL(Dtlink_t*);
96 list->data.size = 0;
118 Dtlist_t *list = (Dtlist_t*)dt->data;
124 lnk = list->link;
126 { list->link = NIL(Dtlink_t*);
131 { if(list->link != NIL(Dtlink_t*))
134 list->link = lnk;
174 Dtlist_t *list = (Dtlist_t*)dt->data;
191 h = list->here; /* save finger to last search object */
192 list->here = NIL(Dtlink_t*);
196 if((r = list->link) ) /* special case for destack or dequeue */
226 { if(!h || h == list->link )
236 r->_rght = t = list->link;
242 list->link = r;
246 if((t = list->link) )
252 { list->link = r;
258 list->here = r;
272 else /* linear search through the list */
274 for(r = list->link; r; r = r->_rght)
300 if(r == (t = list->link) )
301 { list->link = r->_rght;
302 if((h = list->link) )
311 list->here = r == list->here ? r->_rght : NIL(Dtlink_t*);
323 r = r == list->link ? NIL(Dtlink_t*) : r->_left;
326 list->here = r;
346 Dtlist_t *list = (Dtlist_t*)dt->data;
349 { if(list) /* already initialized */
351 if(!(list = (Dtlist_t*)(*dt->memoryf)(dt, 0, sizeof(Dtlist_t), dt->disc)) )
352 { DTERROR(dt, "Error in allocating a list data structure");
355 memset(list, 0, sizeof(Dtlist_t));
356 dt->data = (Dtdata_t*)list;
360 { if(!list) /* already closed */
362 if(list->link) /* remove all items */
364 (void)(*dt->memoryf)(dt, (Void_t*)list, 0, dt->disc);