Base for singly-linked lists. More...
#include <SLListBase.H>

Classes | |
| struct | link |
| The structure for a singly-linked storage node. More... | |
| class | iterator |
| A primitive non-const node iterator. More... | |
| class | const_iterator |
| A primitive const node iterator. More... | |
Public Member Functions | |
| SLListBase ()=default | |
| Default construct. | |
| SLListBase (const SLListBase &)=delete | |
| No copy construct. | |
| void | operator= (const SLListBase &)=delete |
| No copy assignment. | |
| ~SLListBase ()=default | |
| Destructor. | |
| bool | empty () const noexcept |
| True if the list is empty. | |
| label | size () const noexcept |
| The number of elements in list. | |
| link * | front () |
| Return first entry. | |
| const link * | front () const |
| Return const access to first entry. | |
| link * | back () |
| Return last entry. | |
| const link * | back () const |
| Return const access to last entry. | |
| void | push_front (link *item) |
| Add at front of list. | |
| void | push_back (link *item) |
| Add at back of list. | |
| link * | removeHead () |
| Remove and return first entry. | |
| link * | remove (link *item) |
| link * | remove (iterator &iter) |
| void | clear () |
| Clear the list. | |
| void | swap (SLListBase &lst) |
| Swap the contents of list. | |
| void | transfer (SLListBase &lst) |
| Transfer the contents of the argument into this list and annul the argument list. | |
| iterator | begin () |
| Iterator to first item in list with non-const access. | |
| const_iterator | cbegin () const |
| Iterator to first item in list with const access. | |
| const_iterator | crbegin () const =delete |
| No reverse iteration. | |
| const iterator & | end () |
| End of list for iterators. | |
| const const_iterator & | cend () const |
| End of list for iterators. | |
| const const_iterator & | crend () const =delete |
| No reverse iteration. | |
| link * | first () |
| Return first entry. | |
| const link * | first () const |
| Return const access to first entry. | |
| link * | last () |
| Return last entry. | |
| const link * | last () const |
| Return const access to last entry. | |
| void | prepend (link *item) |
| Add at front of list. | |
| void | append (link *item) |
| Add at back of list. | |
Protected Member Functions | |
| template<class IteratorType> | |
| IteratorType | iterator_first () const |
| Return iterator to first item or end-iterator if list is empty. | |
| template<class IteratorType> | |
| IteratorType | iterator_last () const |
| Return iterator to last item or end-iterator if list is empty. | |
Static Protected Member Functions | |
| template<class IteratorType> | |
| static const IteratorType & | iterator_end () |
| Factory method to return an iterator end. | |
| template<class IteratorType> | |
| static const IteratorType & | iterator_rend ()=delete |
| Factory method to return an iterator rend. | |
Friends | |
| class | iterator |
| class | const_iterator |
Base for singly-linked lists.
The iterators associated with the list only have a core functionality for navigation, with additional functionality to be added by inheriting classes. The node iterators always have a node-pointer as the first member data, which allows reinterpret_cast from anything else with a nullptr as its first data member. The nullObject is such an item (with a nullptr data member).
Definition at line 57 of file SLListBase.H.
|
default |
Default construct.
Referenced by SLListBase::const_iterator::const_iterator(), SLListBase::const_iterator::const_iterator(), iterator_first(), iterator_last(), operator=(), SLListBase(), swap(), and transfer().

|
delete |
|
default |
Destructor.
|
inlinestaticprotected |
Factory method to return an iterator end.
Simply reinterprets a NullObject as a SLListBase iterator.
Definition at line 28 of file SLListBaseI.H.
References Foam::nullObjectPtr.
Referenced by cend(), and end().

|
staticprotecteddelete |
Factory method to return an iterator rend.
Deleted for SLListBase
|
inlineprotected |
Return iterator to first item or end-iterator if list is empty.
Removes constness which the caller promises to manage.
Definition at line 35 of file SLListBaseI.H.
References size(), and SLListBase().
Referenced by begin(), and cbegin().


|
inlineprotected |
Return iterator to last item or end-iterator if list is empty.
Removes constness which the caller promises to manage.
Definition at line 50 of file SLListBaseI.H.
References size(), and SLListBase().

|
delete |
|
inlinenoexcept |
True if the list is empty.
Definition at line 175 of file SLListBase.H.
References Foam::noexcept.
Referenced by DAC< CompType, ThermoType >::reduceMechanism(), DRG< CompType, ThermoType >::reduceMechanism(), DRGEP< CompType, ThermoType >::reduceMechanism(), and PFA< CompType, ThermoType >::reduceMechanism().

|
inlinenoexcept |
The number of elements in list.
Definition at line 180 of file SLListBase.H.
References Foam::noexcept.
Referenced by begin(), valueAverageBase::calc(), cbegin(), namesList< solutionEntry >::findNames(), iterator_first(), and iterator_last().

|
inline |
Return first entry.
Definition at line 67 of file SLListBaseI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and SLListBase::link::next_.
Referenced by first(), and first().


|
inline |
Return const access to first entry.
Definition at line 80 of file SLListBaseI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and SLListBase::link::next_.

|
inline |
Return last entry.
Definition at line 93 of file SLListBaseI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
Referenced by last(), and last().


|
inline |
Return const access to last entry.
Definition at line 106 of file SLListBaseI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

| void push_front | ( | SLListBase::link * | item | ) |
Add at front of list.
Definition at line 27 of file SLListBase.C.
References SLListBase::link::next_.
Referenced by prepend().

| void push_back | ( | SLListBase::link * | item | ) |
Add at back of list.
Definition at line 49 of file SLListBase.C.
References SLListBase::link::next_.
Referenced by append().

| Foam::SLListBase::link * removeHead | ( | ) |
Remove and return first entry.
Definition at line 70 of file SLListBase.C.
References Foam::abort(), SLListBase::link::deregister(), Foam::FatalError, FatalErrorInFunction, and SLListBase::link::next_.
Referenced by remove().


| Foam::SLListBase::link * remove | ( | SLListBase::link * | item | ) |
Definition at line 99 of file SLListBase.C.
References begin(), SLListBase::link::deregister(), end(), SLListBase::iterator::get_node(), SLListBase::iterator::next(), SLListBase::link::next_, p, and removeHead().
Referenced by remove().


|
inline |
Definition at line 151 of file SLListBaseI.H.
References remove().

|
inline |
Clear the list.
Definition at line 118 of file SLListBaseI.H.
Referenced by transfer().

|
inline |
Swap the contents of list.
Definition at line 125 of file SLListBaseI.H.
References SLListBase().

|
inline |
Transfer the contents of the argument into this list and annul the argument list.
Definition at line 137 of file SLListBaseI.H.
References clear(), and SLListBase().

|
inline |
Iterator to first item in list with non-const access.
Definition at line 230 of file SLListBaseI.H.
References end(), iterator_first(), and size().
Referenced by SLListBase::const_iterator::operator=(), and remove().


|
inline |
Iterator to first item in list with const access.
Definition at line 326 of file SLListBaseI.H.
References cend(), iterator_first(), and size().
Referenced by SLListBase::const_iterator::operator=().


|
delete |
|
inline |
End of list for iterators.
Definition at line 242 of file SLListBaseI.H.
References iterator_end().
Referenced by begin(), crbegin(), and remove().


|
inline |
End of list for iterators.
Definition at line 249 of file SLListBaseI.H.
References iterator_end().
Referenced by cbegin(), and crbegin().


|
delete |
|
inline |
Return first entry.
FOAM_DEPRECATED_FOR(2022-10, "front()")
Definition at line 420 of file SLListBase.H.
References first(), and front().
Referenced by first().


|
inline |
Return const access to first entry.
FOAM_DEPRECATED_FOR(2022-10, "front()")
Definition at line 427 of file SLListBase.H.
References front().

|
inline |
Return last entry.
FOAM_DEPRECATED_FOR(2022-10, "back()")
Definition at line 434 of file SLListBase.H.
References back().

|
inline |
Return const access to last entry.
FOAM_DEPRECATED_FOR(2022-10, "back()")
Definition at line 441 of file SLListBase.H.
References back().

|
inline |
Add at front of list.
FOAM_DEPRECATED_FOR(2022-10, "push_front()")
Definition at line 448 of file SLListBase.H.
References push_front().

|
inline |
Add at back of list.
FOAM_DEPRECATED_FOR(2022-10, "push_back()")
Definition at line 455 of file SLListBase.H.
References push_back().

|
friend |
Definition at line 141 of file SLListBase.H.
|
friend |
Definition at line 144 of file SLListBase.H.