ACAV 69797fb42a2b
Abstract Syntax Tree (AST) visualization tool for C, C++, and Objective-C
Loading...
Searching...
No Matches
acav::AstViewNode Class Reference

Represents node in AST tree hierarchy. More...

#include <AstNode.h>

Public Member Functions

 AstViewNode (const AstViewNode &)=delete
AstViewNode & operator= (const AstViewNode &)=delete
 AstViewNode (AstViewNode &&)=delete
AstViewNode & operator= (AstViewNode &&)=delete
AstNode * getNode () const
 Get underlying data node.
AstViewNode * getParent () const
 Get parent in tree hierarchy.
const std::vector< AstViewNode * > & getChildren () const
 Get children in tree hierarchy.
void setParent (AstViewNode *parent)
 Set parent node.
void addChild (AstViewNode *child)
 Add child node.
const AcavJson & getProperties () const
 Get node properties (delegates to data node).
const SourceRange & getSourceRange () const
 Get source range (delegates to data node).

Friends

class AstContext

Detailed Description

Represents node in AST tree hierarchy.

Manages parent-child relationships. Points to shared AstNode data. Memory managed by AstContext (no recursive deletion).

Definition at line 195 of file AstNode.h.

Constructor & Destructor Documentation

◆ ~AstViewNode()

acav::AstViewNode::~AstViewNode ( )

Definition at line 42 of file AstNode.cpp.

Member Function Documentation

◆ addChild()

void acav::AstViewNode::addChild ( AstViewNode * child)

Add child node.

Definition at line 53 of file AstNode.cpp.

References addChild(), and setParent().

Referenced by addChild().

◆ getChildren()

const std::vector< AstViewNode * > & acav::AstViewNode::getChildren ( ) const
inline

Get children in tree hierarchy.

Definition at line 209 of file AstNode.h.

◆ getNode()

AstNode * acav::AstViewNode::getNode ( ) const
inline

Get underlying data node.

Definition at line 205 of file AstNode.h.

◆ getParent()

AstViewNode * acav::AstViewNode::getParent ( ) const
inline

Get parent in tree hierarchy.

Definition at line 207 of file AstNode.h.

◆ getProperties()

const AcavJson & acav::AstViewNode::getProperties ( ) const
inline

Get node properties (delegates to data node).

Definition at line 217 of file AstNode.h.

◆ getSourceRange()

const SourceRange & acav::AstViewNode::getSourceRange ( ) const
inline

Get source range (delegates to data node).

Definition at line 219 of file AstNode.h.

Referenced by acav::SourceLocationIndex::addNode().

◆ setParent()

void acav::AstViewNode::setParent ( AstViewNode * parent)
inline

Set parent node.

Definition at line 212 of file AstNode.h.

Referenced by addChild().

◆ AstContext

friend class AstContext
friend

Definition at line 224 of file AstNode.h.


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