Go to the documentation of this file.
30 template<
class LListBase,
class T>
33 UILList<LListBase,
T>()
37 typename UILList<LListBase, T>::const_iterator iter = lst.begin();
42 this->append(iter().clone().ptr());
47 template<
class LListBase,
class T>
48 template<
class CloneArg>
52 const CloneArg& cloneArg
64 this->append(iter().clone(cloneArg).ptr());
71 template<
class LListBase,
class T>
80 template<
class LListBase,
class T>
84 if ((tPtr = this->removeHead()))
95 template<
class LListBase,
class T>
99 if ((tPtr = remove(
p)))
111 template<
class LListBase,
class T>
114 label oldSize = this->size();
115 for (
label i=0; i<oldSize; ++i)
124 template<
class LListBase,
class T>
128 LListBase::transfer(lst);
134 template<
class LListBase,
class T>
146 this->append(iter().clone().ptr());
friend class const_iterator
bool eraseHead()
Remove the head element specified from the list and delete it.
void transfer(ILList< LListBase, T > &)
Transfer the contents of the argument into this List.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
void clear()
Clear the contents of the list.
Template class for intrusive linked lists.
void operator=(const ILList< LListBase, T > &)
Template class for intrusive linked lists.
An STL-conforming const_iterator.
bool erase(T *p)
Remove the specified element from the list and delete it.