33template<
class LListBase,
class T>
38 for (
const T& val : lst)
45template<
class LListBase,
class T>
50 LListBase::transfer(lst);
54template<
class LListBase,
class T>
59 for (
const T& val : lst)
68template<
class LListBase,
class T>
77template<
class LListBase,
class T>
87 link*
p =
static_cast<link*
>(LListBase::removeHead());
94template<
class LListBase,
class T>
102template<
class LListBase,
class T>
106 LListBase::transfer(lst);
112template<
class LListBase,
class T>
117 for (
const T& val : lst)
124template<
class LListBase,
class T>
129 LListBase::transfer(lst);
133template<
class LListBase,
class T>
138 for (
const T& val : lst)
140 this->push_back(val);
Template class for non-intrusive linked lists.
void pop_front(label n=1)
Remove first element(s) from the list (deletes pointers).
LList()=default
Default construct.
void transfer(LList< LListBase, T > &lst)
Transfer the contents of the argument into this List and annul the argument list.
void push_back(const T &elem)
Add copy at back of list.
void clear()
Delete contents of list.
~LList()
Destructor. Calls clear().
void operator=(const LList< LListBase, T > &lst)
Copy assignment.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
The storage of T with linked nodes.