53template<
typename TElement>
97 TElement*
next()
const {
return n; }
116 auto* result=
next();
131 TElement* result=
next();
132 next( last->next() );
140 TElement* result = elem->next();
156 while( start != end ) {
157 start= start->
next();
176template<
typename TElement>
228 last->next(this->
first());
235 TElement* result=
first();
249 TElement* elem=
first();
250 while( elem->hasNext() )
259 TElement*
findLast( TElement* hint )
const noexcept {
260 TElement* elem= hint;
261 while( elem->hasNext() )
275 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