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

Represents a declarative statement with one or more named initializers. More...

#include <bond/compiler/parsenodes.h>

Inheritance diagram for Bond::DeclarativeStatement:
Bond::ListParseNode Bond::ParseNode

Public Member Functions

 DeclarativeStatement (TypeDescriptor *typeDescriptor, NamedInitializer *initializerList)
 Constructs a declarative statement.
virtual ~DeclarativeStatement ()
virtual void Accept (ParseNodeVisitor &visitor) override
 Dispatches this node to the given visitor.
virtual void Accept (ParseNodeVisitor &visitor) const override
 Dispatches this node to the given visitor.
virtual const Token * GetContextToken () const override
 Returns the token used as source context for diagnostics.
const TypeDescriptor * GetTypeDescriptor () const
 Returns the declaration type descriptor.
TypeDescriptor * GetTypeDescriptor ()
 Returns the declaration type descriptor.
const NamedInitializer * GetNamedInitializerList () const
 Returns list of named initializers.
NamedInitializer * GetNamedInitializerList ()
 Returns list of named initializers.
Public Member Functions inherited from Bond::ListParseNode
virtual ~ListParseNode ()
ListParseNode * GetNextNode ()
 Returns the next node in the list.
const ListParseNode * GetNextNode () 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 ()

Additional Inherited Members

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

Detailed Description

Represents a declarative statement with one or more named initializers.

Constructor & Destructor Documentation

◆ DeclarativeStatement()

Bond::DeclarativeStatement::DeclarativeStatement ( TypeDescriptor * typeDescriptor,
NamedInitializer * initializerList )
inline

Constructs a declarative statement.

Parameters
typeDescriptorCommon type descriptor for declared names.
initializerListList of declared names and initializers.

◆ ~DeclarativeStatement()

virtual Bond::DeclarativeStatement::~DeclarativeStatement ( )
inlinevirtual

Member Function Documentation

◆ Accept() [1/2]

virtual void Bond::DeclarativeStatement::Accept ( ParseNodeVisitor & visitor) const
inlineoverridevirtual

Dispatches this node to the given visitor.

Parameters
visitorVisitor that handles this node type.

Implements Bond::ParseNode.

◆ Accept() [2/2]

virtual void Bond::DeclarativeStatement::Accept ( ParseNodeVisitor & visitor)
inlineoverridevirtual

Dispatches this node to the given visitor.

Parameters
visitorVisitor that handles this node type.

Implements Bond::ParseNode.

◆ GetContextToken()

virtual const Token * Bond::DeclarativeStatement::GetContextToken ( ) const
inlineoverridevirtual

Returns the token used as source context for diagnostics.

Returns
A token associated with this node, or null if no token applies.

Implements Bond::ParseNode.

◆ GetNamedInitializerList() [1/2]

NamedInitializer * Bond::DeclarativeStatement::GetNamedInitializerList ( )
inline

Returns list of named initializers.

◆ GetNamedInitializerList() [2/2]

const NamedInitializer * Bond::DeclarativeStatement::GetNamedInitializerList ( ) const
inline

Returns list of named initializers.

◆ GetTypeDescriptor() [1/2]

TypeDescriptor * Bond::DeclarativeStatement::GetTypeDescriptor ( )
inline

Returns the declaration type descriptor.

◆ GetTypeDescriptor() [2/2]

const TypeDescriptor * Bond::DeclarativeStatement::GetTypeDescriptor ( ) const
inline

Returns the declaration type descriptor.


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