Free Electron
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
fe::ListCore Class Referenceabstract

Type-nonspecific Base Functionality of fe::List <> More...

#include <List.h>

Inheritance diagram for fe::ListCore:
Inheritance graph
[legend]

Classes

class  Context
 A view state into an fe::List <> More...
 

Public Member Functions

void setAutoDestruct (BWORD set)
 Set the AutoDestruct flag. More...
 
BWORD autoDestruct (void)
 Get the AutoDestruct flag. More...
 
U32 size (void) const
 Returns the number of elements on the list. More...
 
void removeAll (void)
 Remove and delete nodes, but don't delete contents. More...
 
BWORD moveNodeBefore (Context &from, Context &to)
 Moves the node at the first context before the node at the second context. More...
 
BWORD moveNodeAfter (Context &from, Context &to)
 Moves the node at the first context after the node at the second context. More...
 
BWORD isAtHeadNull (Context &rContext) const
 Returns TRUE if the context is before the first element. More...
 
BWORD isAtTailNull (Context &rContext) const
 Returns TRUE if the context is after the last element. More...
 

Protected Member Functions

NodeCore * coreGetElement (I32 index) const
 
NodeCore * coreInsert (BWORD before, Context &rContext, NodeCore *existingNode)
 
BWORD coreRemoveNode (NodeCore *node)
 
BWORD coreMoveNode (BWORD before, Context &from, Context &to)
 
virtual NodeCore * newNode (void) const =0
 
void internalToHead (Context &rContext) const
 
void internalPostIncrement (Context &rContext) const
 
void internalDetachNode (NodeCore *node)
 
NodeCore * internalGetCurrent (Context &rContext) const
 

Protected Attributes

NodeCore * m_pHead
 
NodeCore * m_pTail
 
I32 m_length
 
BWORD m_autodestruct
 

Detailed Description

Type-nonspecific Base Functionality of fe::List <>

Allows access to generic list without knowing the element type.

Member Function Documentation

◆ autoDestruct()

BWORD fe::ListCore::autoDestruct ( void  )
inline

Get the AutoDestruct flag.

◆ isAtHeadNull()

BWORD fe::ListCore::isAtHeadNull ( Context rContext) const
inline

Returns TRUE if the context is before the first element.

References fe::ListCore::Context::current(), and fe::ListCore::Context::isAtTailNull().

◆ isAtTailNull()

BWORD fe::ListCore::isAtTailNull ( Context rContext) const
inline

Returns TRUE if the context is after the last element.

References fe::ListCore::Context::current(), and fe::ListCore::Context::isAtTailNull().

◆ moveNodeAfter()

BWORD fe::ListCore::moveNodeAfter ( Context from,
Context to 
)
inline

Moves the node at the first context after the node at the second context.

◆ moveNodeBefore()

BWORD fe::ListCore::moveNodeBefore ( Context from,
Context to 
)
inline

Moves the node at the first context before the node at the second context.

◆ removeAll()

void fe::ListCore::removeAll ( void  )

Remove and delete nodes, but don't delete contents.

◆ setAutoDestruct()

void fe::ListCore::setAutoDestruct ( BWORD  set)
inline

Set the AutoDestruct flag.

If TRUE, destruction of the list will attempt to destroy all the elements.

◆ size()

U32 fe::ListCore::size ( void  ) const
inline

Returns the number of elements on the list.


The documentation for this class was generated from the following files: