Lines Matching refs:list
18 #define OBJ_TO_LINK(list,obj) ((MEMLink*)(((u32)(obj))+(list)->offset)) argument
35 MEMInitList( MEMList* list, u16 offset ) in MEMInitList() argument
37 ASSERT( list != NULL ); in MEMInitList()
39 list->headObject = NULL; in MEMInitList()
40 list->tailObject = NULL; in MEMInitList()
41 list->numObjects = 0; in MEMInitList()
42 list->offset = offset; in MEMInitList()
56 SetFirstObject_( MEMList* list, void* object ) in SetFirstObject_() argument
60 ASSERT( list != NULL ); in SetFirstObject_()
63 link = OBJ_TO_LINK(list, object); in SetFirstObject_()
67 list->headObject = object; in SetFirstObject_()
68 list->tailObject = object; in SetFirstObject_()
69 list->numObjects++; in SetFirstObject_()
83 MEMAppendListObject( MEMList* list, void* object ) in MEMAppendListObject() argument
85 ASSERT( list != NULL ); in MEMAppendListObject()
88 if (list->headObject == NULL) in MEMAppendListObject()
91 SetFirstObject_(list, object); in MEMAppendListObject()
95 MEMLink* link = OBJ_TO_LINK(list, object); in MEMAppendListObject()
97 link->prevObject = list->tailObject; in MEMAppendListObject()
100 OBJ_TO_LINK(list, list->tailObject)->nextObject = object; in MEMAppendListObject()
101 list->tailObject = object; in MEMAppendListObject()
102 list->numObjects++; in MEMAppendListObject()
117 MEMPrependListObject( MEMList* list, void* object ) in MEMPrependListObject() argument
119 ASSERT( list != NULL ); in MEMPrependListObject()
122 if (list->headObject == NULL) in MEMPrependListObject()
125 SetFirstObject_(list, object); in MEMPrependListObject()
129 MEMLink* link = OBJ_TO_LINK(list, object); in MEMPrependListObject()
132 link->nextObject = list->headObject; in MEMPrependListObject()
134 OBJ_TO_LINK(list, list->headObject)->prevObject = object; in MEMPrependListObject()
135 list->headObject = object; in MEMPrependListObject()
136 list->numObjects++; in MEMPrependListObject()
155 MEMInsertListObject( MEMList* list, void* target, void* object ) in MEMInsertListObject() argument
157 ASSERT( list != NULL ); in MEMInsertListObject()
163 MEMAppendListObject(list, object); in MEMInsertListObject()
165 else if (target == list->headObject) in MEMInsertListObject()
168 MEMPrependListObject(list, object); in MEMInsertListObject()
172 MEMLink* link = OBJ_TO_LINK(list, object); in MEMInsertListObject()
173 void* prevObj = OBJ_TO_LINK(list, target)->prevObject; in MEMInsertListObject()
174 MEMLink* prevLnk = OBJ_TO_LINK(list, prevObj); in MEMInsertListObject()
179 OBJ_TO_LINK(list, target)->prevObject = object; in MEMInsertListObject()
180 list->numObjects++; in MEMInsertListObject()
195 MEMRemoveListObject( MEMList* list, void* object ) in MEMRemoveListObject() argument
199 ASSERT( list != NULL ); in MEMRemoveListObject()
202 link = OBJ_TO_LINK(list, object); in MEMRemoveListObject()
206 list->headObject = link->nextObject; in MEMRemoveListObject()
210 OBJ_TO_LINK(list, link->prevObject)->nextObject = link->nextObject; in MEMRemoveListObject()
214 list->tailObject = link->prevObject; in MEMRemoveListObject()
218 OBJ_TO_LINK(list, link->nextObject)->prevObject = link->prevObject; in MEMRemoveListObject()
222 list->numObjects--; in MEMRemoveListObject()
239 MEMGetNextListObject( MEMList* list, void* object ) in MEMGetNextListObject() argument
241 ASSERT( list != NULL ); in MEMGetNextListObject()
245 return list->headObject; in MEMGetNextListObject()
247 return OBJ_TO_LINK(list, object)->nextObject; in MEMGetNextListObject()
264 MEMGetPrevListObject( MEMList* list, void* object ) in MEMGetPrevListObject() argument
266 ASSERT( list != NULL ); in MEMGetPrevListObject()
270 return list->tailObject; in MEMGetPrevListObject()
272 return OBJ_TO_LINK(list, object)->prevObject; in MEMGetPrevListObject()
288 MEMGetNthListObject( MEMList* list, u16 index ) in MEMGetNthListObject() argument
293 ASSERT( list != NULL ); in MEMGetNthListObject()
295 while ((object = (MEMLink*)MEMGetNextListObject(list, object)) != NULL) in MEMGetNthListObject()
319 MEMCountListNode(MEMList* list)
324 ASSERT( list != NULL );
326 while ((object = GetNextListObject(list, object)) != NULL)