#include <baselist.h>
Link field for the pointers of a list node.
Public Member Functions | |
BaseListLink (NODE *prev=nullptr, NODE *next=nullptr, Bool is_head=false) | |
BaseListLink (BaseListLink &&src) | |
void | MoveFrom (NODE *thisNode, BaseListLink &src) |
MAXON_OPERATOR_MOVE_ASSIGNMENT (BaseListLink) | |
NODE * | _GetNext () const |
NODE * | _GetPrev () const |
Bool | IsListHead () const |
Bool | IsInList () const |
NODE * | _GetNextChecked () const |
NODE * | _GetPrevChecked () const |
void | SetNext (NODE *val) |
void | SetPrev (NODE *val) |
Static Public Member Functions | |
static void | Remove (NODE *remove) |
static void | MoveBefore (NODE *move, NODE *next) |
static void | InsertBefore (NODE *insert, NODE *next) |
static void | InsertAfter (NODE *insert, NODE *prev) |
Protected Member Functions | |
void | SetListHead (Bool val) |
Static Protected Member Functions | |
static UInt | ComputePrevFlag (const NODE *prev, Bool head) |
Static Protected Attributes | |
static const UInt | HEAD_FLAG |
static const UInt | INFO_FLAG |
static const UInt | INFO_MASK |
static const UInt | ADDRESS_MASK |
Additional Inherited Members | |
Public Attributes inherited from BaseListLinkPOD | |
void * | _next |
UInt | _prevFlag |
|
explicit |
BaseListLink | ( | BaseListLink< NODE > && | src | ) |
move constructor
void MoveFrom | ( | NODE * | thisNode, |
BaseListLink< NODE > & | src | ||
) |
MAXON_OPERATOR_MOVE_ASSIGNMENT | ( | BaseListLink< NODE > | ) |
move assignment operator
NODE* _GetNext | ( | ) | const |
Gets the next element.
NODE* _GetPrev | ( | ) | const |
Gets the previous element.
|
static |
Removes the element (just removes it from the list, does not delete it).
|
static |
Moves an already inserted node before next (equivalent to Remove followed by InsertBefore).
[in] | move | Node to move. |
[in] | next | The next object's link. |
|
static |
Inserts this before next.
[in] | insert | Node to insert. |
[in] | next | The next object's link. |
|
static |
Inserts this behind prev.
[in] | insert | Node to insert. |
[in] | prev | The previous object's link. |
Bool IsListHead | ( | ) | const |
Returns true if this is a list head (_GetNext() would return pointer to the first element of the list, _GetPrev() to the last)
Bool IsInList | ( | ) | const |
Returns true if this link is contained in a list, but not a list head (i.e., _GetNext() and _GetPrev() are valid).
NODE* _GetNextChecked | ( | ) | const |
NODE* _GetPrevChecked | ( | ) | const |
void SetNext | ( | NODE * | val | ) |
void SetPrev | ( | NODE * | val | ) |
|
protected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |