55template<
typename TElement>
100 TElement*
next()
const {
return n; }
120 auto* result=
next();
136 TElement* result=
next();
137 next( last->next() );
146 TElement* result = elem->next();
163 while( start != end )
165 start= start->
next();
184template<
typename TElement>
238 last->next(this->
first());
246 TElement* result=
first();
261 TElement* elem=
first();
262 while( elem->hasNext() )
271 TElement*
findLast( TElement* hint )
const noexcept
273 TElement* elem= hint;
274 while( elem->hasNext() )
289 return static_cast<TElement*
>( it );
platform_specific integer
SidiListHook(const SidiListHook ©)=delete
void reset() noexcept
Resets this list to zero elements.
TElement * first() const noexcept
TElement * findLast(TElement *hint) const noexcept
void pushFront(TElement *elem) noexcept
SidiListHook() noexcept
Default constructor. Initializes this list to be empty.
TElement * findLast() const noexcept
SidiNodeBase< Element > TNode
TNode * findAndRemove(TElement *elem) noexcept
TElement * popFront() noexcept
bool isEmpty() const noexcept
void pushFront(TElement *first, TElement *last)
SidiListHook(SidiListHook &&) noexcept=default
TElement * findLastBefore(TElement *elem) noexcept
integer count(TElement *end=nullptr) const noexcept
SidiNodeBase() noexcept=default
Default constructor. (Does not initialize the pointer.)
TElement * addBehind(TElement *elem) noexcept
TElement * removeNext() noexcept
TElement * removeRangeBehind(TElement *last) noexcept
void next(SidiNodeBase *p)
bool pointsTo(const SidiNodeBase *elem) const
integer count(SidiNodeBase *end=nullptr) const noexcept