Lines Matching refs:element

56 	inline Link* operator()(Element* element) const
58 return element->GetDoublyLinkedListLink();
61 inline const Link* operator()(const Element* element) const
63 return element->GetDoublyLinkedListLink();
75 inline Link* operator()(Element* element) const
77 return &(element->*LinkMember);
80 inline const Link* operator()(const Element* element) const
82 return &(element->*LinkMember);
93 inline Link* operator()(Element* element) const
95 return (Link*)&element->link;
98 inline const Link* operator()(const Element* element) const
100 return (const Link*)&element->link;
156 Element* element = fCurrent;
161 return element;
205 Element* element = fNext;
208 return element;
257 Element* element = fCurrent;
262 return element;
306 Element* element = fNext;
309 return element;
335 inline void InsertBefore(Element* insertBefore, Element* element);
336 inline void InsertAfter(Element* insertAfter, Element* element);
337 inline void Insert(Element* element, bool back = true);
338 inline void Add(Element* element, bool back = true);
339 inline void Remove(Element* element);
357 static inline Element* GetPrevious(Element* element);
358 static inline Element* GetNext(Element* element);
360 inline bool Contains(Element* element) const;
379 inline void Insert(Element* before, Element* element);
395 DOUBLY_LINKED_LIST_CLASS_NAME::Insert(Element* element, bool back)
397 if (element) {
403 Link* elLink = sGetLink(element);
409 sGetLink(fLast)->next = element;
411 fFirst = element;
412 fLast = element;
418 sGetLink(fFirst)->previous = element;
420 fLast = element;
421 fFirst = element;
429 DOUBLY_LINKED_LIST_CLASS_NAME::InsertBefore(Element* before, Element* element)
431 ASSERT(element != NULL);
434 Insert(element);
444 Link* link = sGetLink(element);
448 beforeLink->previous = element;
451 sGetLink(link->previous)->next = element;
453 fFirst = element;
459 DOUBLY_LINKED_LIST_CLASS_NAME::InsertAfter(Element* after, Element* element)
461 ASSERT(element != NULL);
464 Insert(element, false);
474 Link* link = sGetLink(element);
478 afterLink->next = element;
481 sGetLink(link->next)->previous = element;
483 fLast = element;
489 DOUBLY_LINKED_LIST_CLASS_NAME::Insert(Element* before, Element* element)
491 InsertBefore(before, element);
498 DOUBLY_LINKED_LIST_CLASS_NAME::Add(Element* element, bool back)
500 Insert(element, back);
506 DOUBLY_LINKED_LIST_CLASS_NAME::Remove(Element* element)
508 if (element == NULL)
513 && (fFirst != fLast || element == fFirst),
514 "list: %p, element: %p\n", this, element);
517 Link* elLink = sGetLink(element);
519 if (element == fFirst)
524 if (element == fLast)
588 Element* element = Head();
589 Remove(element);
590 return element;
598 Element* element = Tail();
599 Remove(element);
600 return element;
606 DOUBLY_LINKED_LIST_CLASS_NAME::GetPrevious(Element* element)
609 if (element)
610 result = sGetLink(element)->previous;
617 DOUBLY_LINKED_LIST_CLASS_NAME::GetNext(Element* element)
620 if (element)
621 result = sGetLink(element)->next;
630 for (Element* element = First(); element; element = GetNext(element)) {
631 if (element == _element)
645 for (Element* element = First(); element; element = GetNext(element))
660 Element* element = tail;
661 while ((element = GetNext(element)) != NULL) {
662 if (less(element, leastElement))
663 leastElement = element;