52 template<
class LListBase,
class T>
class LList;
54 template<
class LListBase,
class T>
61 template<
class LListBase,
class T>
73 template<
class LListBase,
class T>
93 public LListBase::link
115 LListBase(new
link(a))
136 return static_cast<link*
>(LListBase::first())->
obj_;
142 return static_cast<const link*
>(LListBase::first())->
obj_;
148 return static_cast<link*
>(LListBase::last())->
obj_;
152 const T&
last()
const 154 return static_cast<const link*
>(LListBase::last())->
obj_;
169 LListBase::append(
new link(a));
175 link* elmtPtr =
static_cast<link*
>(LListBase::removeHead());
176 T data = elmtPtr->obj_;
184 link* elmtPtr =
static_cast<link*
>(LListBase::remove(l));
185 T data = elmtPtr->obj_;
193 link* elmtPtr =
static_cast<link*
>(LListBase::remove(it));
194 T data = elmtPtr->obj_;
236 public LListBase_iterator
242 iterator(LListBase_iterator baseIter)
244 LListBase_iterator(baseIter)
264 LListBase_iterator::operator++();
271 return LListBase::begin();
276 return static_cast<const iterator&
>(LListBase::end());
287 public LListBase_const_iterator
295 LListBase_const_iterator(baseIter)
302 LListBase_const_iterator(baseIter)
311 static_cast<const link&
> 315 const T& operator()()
322 LListBase_const_iterator::operator++();
329 return LListBase::cbegin();
339 return LListBase::begin();
350 friend Istream&
operator>> <LListBase,
T>
356 friend Ostream& operator<< <LListBase, T>
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
LListBase::const_iterator LListBase_const_iterator
Template class for non-intrusive linked lists.
T & first()
Return the first entry added.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
An STL-conforming const_iterator.
An STL-conforming iterator.
tmp< fvMatrix< Type > > operator*(const DimensionedField< scalar, volMesh > &, const fvMatrix< Type > &)
T removeHead()
Remove and return head.
timeIndices insert(timeIndex, timeDirs[timeI].value())
An STL-conforming const_iterator.
An STL-conforming iterator.
void transfer(LList< LListBase, T > &)
Transfer the contents of the argument into this List.
void operator=(const LList< LListBase, T > &)
void insert(const T &a)
Add at head of list.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
void clear()
Delete contents of list.
Database for solution data, solver performance and other reduced data.
T & last()
Return the last entry added.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
T & reference
Type that can be used for storing into value_type.
void append(const T &a)
Add at tail of list.
friend class const_iterator
label size_type
The type that can represent the size of a LList.
const const_iterator & cend() const
const T & const_reference
Type that can be used for storing into constant.
LListBase::iterator LListBase_iterator
const_iterator cbegin() const
link(T a)
Construct given object.
T value_type
Type of values the LList contains.