Go to the documentation of this file.
91 link *first_ =
nullptr;
94 link *last_ =
nullptr;
106 template<
class IteratorType>
111 template<
class IteratorType>
116 template<
class IteratorType>
121 template<
class IteratorType>
154 inline label
size() const noexcept;
157 inline
bool empty() const noexcept;
239 inline link* get_node()
const;
242 inline bool good()
const;
296 inline bool good()
const;
void swap(DLListBase &lst)
Swap the contents of the list.
bool swapUp(link *item)
Swap this element with the one above unless it is at the top.
link * remove(link *item)
Remove and return element.
void insert(link *item)
Add at head of list.
const const_iterator & crend() const
End of list for reverse iterators.
bool swapDown(link *item)
Swap this element with the one below unless it is at the bottom.
void next()
Move forward through list.
void deregister()
Deregister the node after removal.
A primitive non-const node iterator.
The structure for a doubly-linked storage node.
const iterator & end()
End of list for iterators.
const_iterator crbegin() const
Iterator to last item in list with const access.
link()=default
Default construct.
link * first()
Return first entry.
bool operator!=(const eddy &a, const eddy &b)
void operator=(const DLListBase &)=delete
No copy assignment.
DLListBase()=default
Default construct.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
iterator begin()
Iterator to first item in list with non-const access.
const_iterator(const const_iterator &)=default
Copy construct.
link * last()
Return last entry.
~DLListBase()=default
Destructor.
friend class const_iterator
bool operator!=(const const_iterator &) const
bool good() const
Pointing at a valid storage node.
const link * get_node() const
The storage node.
bool empty() const noexcept
True if the list is empty.
const const_iterator & cend() const
End of list for iterators.
IteratorType iterator_last() const
Return iterator to last item or end-iterator if list is empty.
void transfer(DLListBase &lst)
link * prev_
Pointer to prev entry in list.
bool found() const
Deprecated(2019-01) Pointing at a valid storage node.
bool registered() const
Check if the node is registered with the list.
link * removeHead()
Remove and return head.
Base for doubly-linked lists.
void prev()
Move backward through list.
const_iterator cbegin() const
Iterator to first item in list with const access.
const_iterator & operator=(const const_iterator &)=default
Copy assignment.
class FOAM_DEPRECATED_FOR(2017-05, "Foam::Enum") NamedEnum
void append(link *item)
Add at tail of list.
label size() const noexcept
The number of elements in list.
bool operator==(const const_iterator &) const
link * replace(link *oldLink, link *newLink)
Replace oldLink with newLink and return element.
IteratorType iterator_first() const
Return iterator to first item or end-iterator if list is empty.
static const IteratorType & iterator_rend()
Factory method to return an iterator reverse end.
link * next_
Pointer to next entry in list.
void clear()
Clear the list.
static const IteratorType & iterator_end()
Factory method to return an iterator end.
A primitive const node iterator (bidirectional).