VL
Public Member Functions | Protected Member Functions | List of all members
vl::ListTreeNode Class Reference

#include <VLBackwardTraversable.h>

Inheritance diagram for vl::ListTreeNode:
vl::VarTreeNode

Public Member Functions

 ListTreeNode (VarNodeRegistry &registry, vl::AbstractVar *data, VarTreeNode *parent)
 
 ~ListTreeNode ()
 
void Update (Observable *sender, vl::VarPtr info) override
 
int ChildCount () const override
 
void Set (int index, const VarTreeNodePtr &node)
 
void Add (const VarTreeNodePtr &node)
 
void Resize (int newSize)
 
const VarTreeNodePtrAt (int index) const
 
bool Clear (int index)
 
ListTreeNodeAsList () override
 
bool IsList () const override
 
const ListTreeNodeAsList () const override
 
void Remove (int index)
 
VarTreeNodePtr SharedFromThis () override
 
ListTreeNodePtr ListSharedFromThis ()
 
- Public Member Functions inherited from vl::VarTreeNode
 VarTreeNode (VarNodeRegistry &registry, vl::AbstractVar *data, VarTreeNode *parent)
 
virtual ~VarTreeNode ()
 
const std::string & GetId () const
 
int GetIndex () const
 
std::string GetPath () const
 
const VarNodeRegistryGetRegistry () const
 
virtual bool IsList () const
 
virtual bool IsObject () const
 
virtual ObjectTreeNodeAsObject ()
 
virtual const ObjectTreeNodeAsObject () const
 
virtual ListTreeNodeAsList ()
 
virtual const ListTreeNodeAsList () const
 
void Update (Observable *sender, vl::VarPtr info) override
 
virtual int ChildCount () const
 
const vl::Var * GetData () const
 
virtual VarTreeNodePtr SharedFromThis ()
 
bool IsRoot () const
 
const VarTreeNodeGetParent () const
 
const void * DataPtr () const
 

Protected Member Functions

bool ForeachChildren (const std::function< bool(VarTreeNode &)> &pred)
 
- Protected Member Functions inherited from vl::VarTreeNode
bool ForeachChildren (const std::function< bool(VarTreeNode &)> &pred)
 
void SetParent (VarTreeNode *newParent)
 

Additional Inherited Members

- Protected Attributes inherited from vl::VarTreeNode
vl::AbstractVar * mData = nullptr
 
const void * mDataPtr = nullptr
 
VarTreeNodemParent = nullptr
 
VarNodeRegistrymRegistry
 
bool mToBeReplaced = false
 

Constructor & Destructor Documentation

◆ ListTreeNode()

vl::ListTreeNode::ListTreeNode ( VarNodeRegistry registry,
vl::AbstractVar *  data,
VarTreeNode parent 
)

◆ ~ListTreeNode()

vl::ListTreeNode::~ListTreeNode ( )

Member Function Documentation

◆ Add()

void vl::ListTreeNode::Add ( const VarTreeNodePtr node)

◆ AsList() [1/2]

const vl::ListTreeNode * vl::ListTreeNode::AsList ( ) const
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ AsList() [2/2]

vl::ListTreeNode * vl::ListTreeNode::AsList ( )
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ At()

const vl::VarTreeNodePtr & vl::ListTreeNode::At ( int  index) const

◆ ChildCount()

int vl::ListTreeNode::ChildCount ( ) const
inlineoverridevirtual

Reimplemented from vl::VarTreeNode.

◆ Clear()

bool vl::ListTreeNode::Clear ( int  index)

◆ ForeachChildren()

bool vl::ListTreeNode::ForeachChildren ( const std::function< bool(VarTreeNode &)> &  pred)
protected

◆ IsList()

bool vl::ListTreeNode::IsList ( ) const
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ ListSharedFromThis()

vl::ListTreeNodePtr vl::ListTreeNode::ListSharedFromThis ( )

◆ Remove()

void vl::ListTreeNode::Remove ( int  index)

◆ Resize()

void vl::ListTreeNode::Resize ( int  newSize)
inline

◆ Set()

void vl::ListTreeNode::Set ( int  index,
const VarTreeNodePtr node 
)

◆ SharedFromThis()

VarTreeNodePtr vl::ListTreeNode::SharedFromThis ( )
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ Update()

void vl::ListTreeNode::Update ( Observable *  sender,
vl::VarPtr  info 
)
override

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