Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
Base class for hierarchy of tree node types. The tree node types can be used to construct tree structures of different types of nodes. More...
#include <tree_base.hpp>
Public Member Functions | |
BaseNode () | |
Constructor of the tree hierarchy base class. More... | |
virtual | ~BaseNode () noexcept=default |
Destructor of the tree hierarchy base class. More... | |
BaseNode (const BaseNode &) | |
Copy construction does not copy the parent pointer. More... | |
BaseNode (BaseNode &&) noexcept | |
Move construction does not copy the parent pointer. More... | |
BaseNode & | operator= (const BaseNode &) |
Copy assignment does not change the parent pointer. More... | |
BaseNode & | operator= (BaseNode &&) noexcept |
Move assignment does not change the parent pointer. More... | |
Data * | getParent () |
Getter of the parent of the node. More... | |
const Data * | getParent () const |
Getter of the parent of the node. More... | |
Friends | |
template<class D , class C > | |
class | NullaryNode |
template<class D , class C > | |
class | UnaryNode |
template<class D , class C > | |
class | BinaryNode |
template<class D , class C > | |
class | TernaryNode |
template<class D , std::size_t I, class C > | |
class | AnyaryNode |
template<class D , class C > | |
class | FixedaryNode |
template<class D , class C > | |
class | VararyNode |
Base class for hierarchy of tree node types. The tree node types can be used to construct tree structures of different types of nodes.
Data | the base class of the actual tree nodes hierarchy on top of this one |
|
inline |
Constructor of the tree hierarchy base class.
|
virtualdefaultnoexcept |
Destructor of the tree hierarchy base class.
|
inline |
Copy construction does not copy the parent pointer.
|
inlinenoexcept |
Move construction does not copy the parent pointer.
|
inline |
Getter of the parent of the node.
|
inline |
Getter of the parent of the node.
|
inlinenoexcept |
Move assignment does not change the parent pointer.
|
inline |
Copy assignment does not change the parent pointer.