Bond 0.9
C++ Bond Runtime Library API Documentation
Loading...
Searching...
No Matches
Bond::Expression Class Reference

Base class for expression nodes. More...

#include <bond/compiler/parsenodes.h>

Inheritance diagram for Bond::Expression:
Bond::ListParseNode Bond::ParseNode Bond::ArraySubscriptExpression Bond::BinaryExpression Bond::CastExpression Bond::ConditionalExpression Bond::ConstantLiteralExpression Bond::EmptyExpression Bond::FunctionCallExpression Bond::IdentifierExpression Bond::MemberExpression Bond::PostfixExpression Bond::PropertyofExpression Bond::ThisExpression Bond::UnaryExpression

Public Member Functions

virtual ~Expression ()
const TypeDescriptorGetTypeDescriptor () const
 Returns the expression's type descriptor.
void SetTypeDescriptor (const TypeDescriptor &descriptor)
 Sets the expression's type descriptor.
const TypeAndValueGetTypeAndValue () const
 Returns type and value metadata for the expression.
TypeAndValueGetTypeAndValue ()
 Returns mutable type and value metadata for the expression.
Public Member Functions inherited from Bond::ListParseNode
virtual ~ListParseNode ()
ListParseNodeGetNextNode ()
 Returns the next node in the list.
const ListParseNodeGetNextNode () const
 Returns the next node in the list.
void SetNextNode (ListParseNode *next)
 Sets the next node in the list.
Public Member Functions inherited from Bond::ParseNode
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 TokenGetContextToken () const =0
 Returns the token used as source context for diagnostics.

Protected Member Functions

 Expression ()
Protected Member Functions inherited from Bond::ListParseNode
 ListParseNode ()
Protected Member Functions inherited from Bond::ParseNode
 ParseNode ()

Detailed Description

Base class for expression nodes.

Constructor & Destructor Documentation

◆ ~Expression()

virtual Bond::Expression::~Expression ( )
inlinevirtual

◆ Expression()

Bond::Expression::Expression ( )
inlineprotected

Member Function Documentation

◆ GetTypeAndValue() [1/2]

TypeAndValue & Bond::Expression::GetTypeAndValue ( )
inline

Returns mutable type and value metadata for the expression.

◆ GetTypeAndValue() [2/2]

const TypeAndValue & Bond::Expression::GetTypeAndValue ( ) const
inline

Returns type and value metadata for the expression.

◆ GetTypeDescriptor()

const TypeDescriptor & Bond::Expression::GetTypeDescriptor ( ) const
inline

Returns the expression's type descriptor.

◆ SetTypeDescriptor()

void Bond::Expression::SetTypeDescriptor ( const TypeDescriptor & descriptor)
inline

Sets the expression's type descriptor.

Parameters
descriptorType descriptor to assign.

The documentation for this class was generated from the following file:
  • include/bond/compiler/parsenodes.h