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 VarTreeNodePtr & At (int index) const
 
bool Clear (int index)
 
ListTreeNode * AsList () override
 
bool IsList () const override
 
const ListTreeNode * AsList () 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 VarNodeRegistry & GetRegistry () const
 
virtual bool IsList () const
 
virtual bool IsObject () const
 
virtual ObjectTreeNode * AsObject ()
 
virtual const ObjectTreeNode * AsObject () const
 
virtual ListTreeNode * AsList ()
 
virtual const ListTreeNode * AsList () 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 VarTreeNode * GetParent () 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
 
VarTreeNode * mParent = nullptr
 
VarNodeRegistry & mRegistry
 
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: