|
Bond 0.9
C++ Bond Runtime Library API Documentation
|
Base class for all parse tree nodes. More...
#include <bond/compiler/parsenodes.h>
Public Member Functions | |
| virtual | ~ParseNode () |
| virtual void | Accept (ParseNodeVisitor &visitor)=0 |
| Dispatches this node to the given visitor. | |
| virtual void | Accept (ParseNodeVisitor &visitor) const =0 |
| Dispatches this node to the given visitor. | |
| virtual const Token * | GetContextToken () const =0 |
| Returns the token used as source context for diagnostics. | |
Protected Member Functions | |
| ParseNode () | |
Base class for all parse tree nodes.
|
inlinevirtual |
|
inlineprotected |
|
pure virtual |
Dispatches this node to the given visitor.
| visitor | Visitor that handles this node type. |
Implemented in Bond::ArraySubscriptExpression, Bond::BinaryExpression, Bond::CastExpression, Bond::CompoundStatement, Bond::ConditionalExpression, Bond::ConstantLiteralExpression, Bond::DeclarativeStatement, Bond::EmptyExpression, Bond::EnumDeclaration, Bond::Enumerator, Bond::ExpressionStatement, Bond::ForStatement, Bond::FunctionCallExpression, Bond::FunctionDefinition, Bond::FunctionPrototype, Bond::IdentifierExpression, Bond::IfStatement, Bond::IncludeDirective, Bond::Initializer, Bond::JumpStatement, Bond::MemberExpression, Bond::NamedInitializer, Bond::NamespaceDefinition, Bond::NativeBlock, Bond::Parameter, Bond::PostfixExpression, Bond::PropertyofExpression, Bond::QualifiedIdentifier, Bond::ResolvedSwitchLabel, Bond::StructDeclaration, Bond::SwitchLabel, Bond::SwitchSection, Bond::SwitchStatement, Bond::ThisExpression, Bond::TranslationUnit, Bond::TypeDescriptor, Bond::TypeSpecifier, Bond::UnaryExpression, and Bond::WhileStatement.
|
pure virtual |
Dispatches this node to the given visitor.
| visitor | Visitor that handles this node type. |
Implemented in Bond::ArraySubscriptExpression, Bond::BinaryExpression, Bond::CastExpression, Bond::CompoundStatement, Bond::ConditionalExpression, Bond::ConstantLiteralExpression, Bond::DeclarativeStatement, Bond::EmptyExpression, Bond::EnumDeclaration, Bond::Enumerator, Bond::ExpressionStatement, Bond::ForStatement, Bond::FunctionCallExpression, Bond::FunctionDefinition, Bond::FunctionPrototype, Bond::IdentifierExpression, Bond::IfStatement, Bond::IncludeDirective, Bond::Initializer, Bond::JumpStatement, Bond::MemberExpression, Bond::NamedInitializer, Bond::NamespaceDefinition, Bond::NativeBlock, Bond::Parameter, Bond::PostfixExpression, Bond::PropertyofExpression, Bond::QualifiedIdentifier, Bond::ResolvedSwitchLabel, Bond::StructDeclaration, Bond::SwitchLabel, Bond::SwitchSection, Bond::SwitchStatement, Bond::ThisExpression, Bond::TranslationUnit, Bond::TypeDescriptor, Bond::TypeSpecifier, Bond::UnaryExpression, and Bond::WhileStatement.
|
pure virtual |
Returns the token used as source context for diagnostics.
Implemented in Bond::ArraySubscriptExpression, Bond::BinaryExpression, Bond::CastExpression, Bond::ConditionalExpression, Bond::ConstantLiteralExpression, Bond::DeclarativeStatement, Bond::EmptyExpression, Bond::ExpressionStatement, Bond::ForStatement, Bond::FunctionCallExpression, Bond::FunctionPrototype, Bond::IdentifierExpression, Bond::IfStatement, Bond::IncludeDirective, Bond::Initializer, Bond::JumpStatement, Bond::MemberExpression, Bond::NativeBlock, Bond::PostfixExpression, Bond::PropertyofExpression, Bond::QualifiedIdentifier, Bond::ResolvedSwitchLabel, Bond::SwitchLabel, Bond::SwitchStatement, Bond::Symbol, Bond::ThisExpression, Bond::TranslationUnit, Bond::TypeDescriptor, Bond::TypeSpecifier, Bond::UnaryExpression, and Bond::WhileStatement.