Base for singly-linked lists. More...
Classes | |
class | const_iterator |
class | iterator |
struct | link |
Public Member Functions | |
SLListBase ()=default | |
SLListBase (const SLListBase &)=delete | |
void | operator= (const SLListBase &)=delete |
~SLListBase ()=default | |
label | size () const noexcept |
bool | empty () const noexcept |
link * | first () |
const link * | first () const |
link * | last () |
const link * | last () const |
void | insert (link *item) |
void | append (link *item) |
link * | removeHead () |
link * | remove (link *item) |
link * | remove (iterator &iter) |
void | clear () |
void | swap (SLListBase &lst) |
void | transfer (SLListBase &lst) |
iterator | begin () |
const_iterator | cbegin () const |
const_iterator | crbegin () const =delete |
const iterator & | end () |
const const_iterator & | cend () const |
const const_iterator & | crend () const =delete |
Protected Member Functions | |
template<class IteratorType > | |
IteratorType | iterator_first () const |
template<class IteratorType > | |
IteratorType | iterator_last () const |
Static Protected Member Functions | |
template<class IteratorType > | |
static const IteratorType & | iterator_end () |
template<class IteratorType > | |
static const IteratorType & | iterator_rend ()=delete |
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 |
|
delete |
|
default |
|
inlinestaticprotected |
Definition at line 28 of file SLListBaseI.H.
References Foam::nullObjectPtr.
|
staticprotecteddelete |
|
inlineprotected |
Definition at line 35 of file SLListBaseI.H.
|
inlineprotected |
Definition at line 50 of file SLListBaseI.H.
|
delete |
|
inlinenoexcept |
Definition at line 66 of file SLListBaseI.H.
|
inlinenoexcept |
Definition at line 72 of file SLListBaseI.H.
|
inline |
Definition at line 79 of file SLListBaseI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
|
inline |
|
inline |
Definition at line 105 of file SLListBaseI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
|
inline |
void insert | ( | SLListBase::link * | item | ) |
Definition at line 27 of file SLListBase.C.
References SLListBase::link::next_.
void append | ( | SLListBase::link * | item | ) |
Definition at line 49 of file SLListBase.C.
References SLListBase::link::next_.
Foam::SLListBase::link * removeHead | ( | ) |
Definition at line 70 of file SLListBase.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and SLListBase::link::next_.
Foam::SLListBase::link * remove | ( | SLListBase::link * | item | ) |
Definition at line 96 of file SLListBase.C.
References stdFoam::begin(), stdFoam::end(), SLListBase::iterator::get_node(), SLListBase::iterator::next(), SLListBase::link::next_, and p.
|
inline |
Definition at line 164 of file SLListBaseI.H.
References SLListBase::remove().
Referenced by SLListBase::remove().
|
inline |
Definition at line 130 of file SLListBaseI.H.
Referenced by SLListBase::transfer().
|
inline |
Definition at line 137 of file SLListBaseI.H.
|
inline |
Definition at line 149 of file SLListBaseI.H.
References SLListBase::clear().
|
inline |
Definition at line 242 of file SLListBaseI.H.
References stdFoam::end().
|
inline |
Definition at line 338 of file SLListBaseI.H.
References stdFoam::cend().
|
delete |
|
inline |
Definition at line 254 of file SLListBaseI.H.
|
inline |
Definition at line 261 of file SLListBaseI.H.
|
delete |
|
friend |
Definition at line 112 of file SLListBase.H.
|
friend |
Definition at line 115 of file SLListBase.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.