Lines Matching refs:elem

38 void        AddToTail( GenLinkedList *pList, void *elem)  in AddToTail()  argument
42 ASSIGNLINK( pList->Tail, elem, pList->LinkOffset); in AddToTail()
44 pList->Head = elem; in AddToTail()
45 ASSIGNLINK( elem, NULL, pList->LinkOffset); in AddToTail()
47 pList->Tail = elem; in AddToTail()
51 void AddToHead( GenLinkedList *pList, void *elem) in AddToHead() argument
54 ASSIGNLINK( elem, pList->Head, pList->LinkOffset); in AddToHead()
56 pList->Tail = elem; in AddToHead()
58 pList->Head = elem; in AddToHead()
62 int RemoveFromList( GenLinkedList *pList, void *elem) in RemoveFromList() argument
69 if ( iElem == elem) { in RemoveFromList()
71 ASSIGNLINK( lastElem, GETLINK( elem, pList->LinkOffset), pList->LinkOffset); in RemoveFromList()
73 pList->Head = GETLINK( elem, pList->LinkOffset); in RemoveFromList()
75 if ( pList->Tail == elem) in RemoveFromList()
77 … ASSIGNLINK( elem, NULL, pList->LinkOffset); // maybe catch a stale reference bug. in RemoveFromList()
132 void DLLAddToHead( GenDoubleLinkedList *pList, void *elem) in DLLAddToHead() argument
140 ASSIGNLINK( elem, pList->Head, pList->FwdLinkOffset); in DLLAddToHead()
141 pList->Head = elem; in DLLAddToHead()
145 ASSIGNLINK( pNext, elem, pList->BackLinkOffset); in DLLAddToHead()
147 pList->Tail = elem; in DLLAddToHead()
148 ASSIGNLINK( elem, NULL, pList->BackLinkOffset); in DLLAddToHead()
152 void DLLRemoveFromList( GenDoubleLinkedList *pList, void *elem) in DLLRemoveFromList() argument
158 pNext = GETLINK( elem, pList->FwdLinkOffset); in DLLRemoveFromList()
159 pPrev = GETLINK( elem, pList->BackLinkOffset); in DLLRemoveFromList()
173 ASSIGNLINK( elem, NULL, pList->FwdLinkOffset); in DLLRemoveFromList()
174 ASSIGNLINK( elem, NULL, pList->BackLinkOffset); in DLLRemoveFromList()
183 static void AssignOffsetLink( void *elem, void *link, size_t linkOffset);
186 static void AssignOffsetLink( void *elem, void *link, size_t linkOffset) in AssignOffsetLink() argument
189 GETOFFSET( elem, linkOffset) = link ? (size_t) link - (size_t) elem : 0; in AssignOffsetLink()
207 void *GetOffsetLink( GenLinkedOffsetList *pList, void *elem) in GetOffsetLink() argument
212 nextOffset = GETOFFSET( elem, pList->LinkOffset); in GetOffsetLink()
214 return nextOffset ? (char*) elem + nextOffset : NULL; in GetOffsetLink()
227 void OffsetAddToTail( GenLinkedOffsetList *pList, void *elem) in OffsetAddToTail() argument
231 AssignOffsetLink( GetTailPtr( pList), elem, pList->LinkOffset); in OffsetAddToTail()
233 pList->Head = (size_t) elem - (size_t) pList; in OffsetAddToTail()
234 AssignOffsetLink( elem, NULL, pList->LinkOffset); in OffsetAddToTail()
236 pList->Tail = (size_t) elem - (size_t) pList; in OffsetAddToTail()
240 void OffsetAddToHead( GenLinkedOffsetList *pList, void *elem) in OffsetAddToHead() argument
243 AssignOffsetLink( elem, GetHeadPtr( pList), pList->LinkOffset); in OffsetAddToHead()
245 pList->Tail = (size_t) elem - (size_t) pList; in OffsetAddToHead()
247 pList->Head = (size_t) elem - (size_t) pList; in OffsetAddToHead()
251 int OffsetRemoveFromList( GenLinkedOffsetList *pList, void *elem) in OffsetRemoveFromList() argument
257 if (elem == NULL) { in OffsetRemoveFromList()
263 if ( iElem == elem) { in OffsetRemoveFromList()
265 AssignOffsetLink( lastElem, GetOffsetLink( pList, elem), pList->LinkOffset); in OffsetRemoveFromList()
267 iElem = GetOffsetLink( pList, elem); in OffsetRemoveFromList()
270 if ( GetTailPtr( pList) == elem) in OffsetRemoveFromList()
272 … AssignOffsetLink( elem, NULL, pList->LinkOffset); // maybe catch a stale reference bug. in OffsetRemoveFromList()