TypeContainerTreeNode Class Reference

Public Member Functions

 TypeContainerTreeNode (class TypeBrowserModelData *model, std::optional< std::weak_ptr< TypeBrowserTreeNode > > parent, const std::string &m_containerId)
 
virtual ~TypeContainerTreeNode ()
 
virtual std::string text (int column) const override
 
virtual bool filter (const std::string &filter, TypeBrowserFilterMode mode) const override
 
virtual bool lessThan (const TypeBrowserTreeNode &other, int column) const override
 
const std::string & containerId () const
 
std::optional< PlatformRefplatform () const
 
std::optional< BinaryNinja::TypeContainertypeContainer () const
 
std::optional< BNTypeContainerTypecontainerType () const
 
virtual void updateChildren (bool recursive, UpdateNodeCallback update) override
 
- Public Member Functions inherited from TypeBrowserTreeNode
class TypeBrowserModelDatamodel () const
 
std::optional< std::shared_ptr< TypeBrowserTreeNode > > parent () const
 
const std::vector< std::shared_ptr< TypeBrowserTreeNode > > & children ()
 
int indexOfChild (std::shared_ptr< const TypeBrowserTreeNode > child) const
 
virtual std::string text (int column) const =0
 
virtual bool lessThan (const TypeBrowserTreeNode &other, int column) const =0
 
virtual bool filter (const std::string &filter, TypeBrowserFilterMode mode) const =0
 
virtual void updateChildren (bool recursive, UpdateNodeCallback update)
 

Protected Member Functions

virtual void generateChildren () override
 
- Protected Member Functions inherited from TypeBrowserTreeNode
 TypeBrowserTreeNode (class TypeBrowserModelData *model, std::optional< std::weak_ptr< TypeBrowserTreeNode > > parent)
 
virtual ~TypeBrowserTreeNode ()=default
 
virtual void generateChildren ()=0
 
void updateChildIndices ()
 
void removeChild (std::shared_ptr< TypeBrowserTreeNode > child)
 
void addChild (std::shared_ptr< TypeBrowserTreeNode > child)
 

Additional Inherited Members

- Public Types inherited from TypeBrowserTreeNode
typedef std::function< void(UpdateData)> UpdateNodeCallback
 
- Protected Attributes inherited from TypeBrowserTreeNode
class TypeBrowserModelDatam_model
 
std::optional< std::weak_ptr< TypeBrowserTreeNode > > m_parent
 
std::vector< std::shared_ptr< TypeBrowserTreeNode > > m_children
 
std::map< const TypeBrowserTreeNode *, size_t > m_childIndices
 
bool m_hasGeneratedChildren
 

Constructor & Destructor Documentation

◆ TypeContainerTreeNode()

TypeContainerTreeNode::TypeContainerTreeNode ( class TypeBrowserModelData model,
std::optional< std::weak_ptr< TypeBrowserTreeNode > >  parent,
const std::string &  m_containerId 
)

◆ ~TypeContainerTreeNode()

virtual TypeContainerTreeNode::~TypeContainerTreeNode ( )
virtual

Member Function Documentation

◆ text()

virtual std::string TypeContainerTreeNode::text ( int  column) const
overridevirtual

Implements TypeBrowserTreeNode.

◆ filter()

virtual bool TypeContainerTreeNode::filter ( const std::string &  filter,
TypeBrowserFilterMode  mode 
) const
overridevirtual

Implements TypeBrowserTreeNode.

◆ lessThan()

virtual bool TypeContainerTreeNode::lessThan ( const TypeBrowserTreeNode other,
int  column 
) const
overridevirtual

Implements TypeBrowserTreeNode.

◆ containerId()

const std::string & TypeContainerTreeNode::containerId ( ) const
inline

◆ platform()

std::optional< PlatformRef > TypeContainerTreeNode::platform ( ) const

◆ typeContainer()

std::optional< BinaryNinja::TypeContainer > TypeContainerTreeNode::typeContainer ( ) const

◆ containerType()

std::optional< BNTypeContainerType > TypeContainerTreeNode::containerType ( ) const

◆ updateChildren()

virtual void TypeContainerTreeNode::updateChildren ( bool  recursive,
UpdateNodeCallback  update 
)
overridevirtual

Reimplemented from TypeBrowserTreeNode.

◆ generateChildren()

virtual void TypeContainerTreeNode::generateChildren ( )
overrideprotectedvirtual

Implements TypeBrowserTreeNode.