12 #ifndef ROC_CORE_LIST_IMPL_H_
13 #define ROC_CORE_LIST_IMPL_H_
Intrusive doubly-linked list implementation class. Handles List infrastructure independent of templat...
ListData * front() const
Get first list node.
ListData * back() const
Get last list node.
ListData * pop_front()
Remove first node and return.
ListData * pop_back()
Remove last node and return.
ListData * prevof(ListData *node) const
Get list node previous to given one.
void remove(ListData *node)
Remove node from list.
void insert(ListData *node, ListData *before)
Insert node into list.
ListData * head()
Get list head (non-node node).
ListData * nextof(ListData *node) const
Get list node next to given one.
bool contains(const ListData *node) const
Check if node belongs to list.
size_t size() const
Get number of nodes in list.
Base class for non-copyable objects.
Commonly used types and functions.