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

#include <bond/compiler/parsenodes.h>

Inheritance diagram for Bond::Parameter:
Bond::Symbol Bond::ListParseNode Bond::ParseNode

Public Member Functions

 Parameter (const Token *name, TypeDescriptor *typeDescriptor)
 
 Parameter (const TypeDescriptor *typeDescriptor, int32_t offset)
 
virtual ~Parameter ()
 
virtual void Accept (ParseNodeVisitor &visitor) override
 
virtual void Accept (ParseNodeVisitor &visitor) const override
 
virtual SymbolType GetSymbolType () const override
 
virtual const TokenGetName () const override
 
virtual TypeAndValueGetTypeAndValue () override
 
virtual const TypeAndValueGetTypeAndValue () const override
 
TypeDescriptorGetTypeDescriptor ()
 
const TypeDescriptorGetTypeDescriptor () const
 
int32_t GetOffset () const
 
void SetOffset (int32_t offset) const
 
- Public Member Functions inherited from Bond::Symbol
virtual ~Symbol ()
 
virtual const TokenGetContextToken () const override
 
virtual SymbolType GetSymbolType () const =0
 
virtual const TokenGetName () const
 
virtual TypeAndValueGetTypeAndValue ()
 
virtual const TypeAndValueGetTypeAndValue () const
 
virtual bool IsResolved () const
 
bool IsTypeDefinition () const
 
SymbolGetParentSymbol ()
 
const SymbolGetParentSymbol () const
 
void SetParentSymbol (Symbol *parent)
 
SymbolFindSymbol (const StringView &name)
 
const SymbolFindSymbol (const StringView &name) const
 
SymbolFindSymbol (const Token *name)
 
const SymbolFindSymbol (const Token *name) const
 
SymbolFindSymbol (const QualifiedIdentifier *identifier)
 
const SymbolFindSymbol (const QualifiedIdentifier *identifier) const
 
void InsertSymbol (Symbol *symbol)
 
bool IsAnonymous () const
 
bool Matches (const StringView &name) const
 
- Public Member Functions inherited from Bond::ListParseNode
virtual ~ListParseNode ()
 
ListParseNodeGetNextNode ()
 
const ListParseNodeGetNextNode () const
 
void SetNextNode (ListParseNode *next)
 
- Public Member Functions inherited from Bond::ParseNode
virtual ~ParseNode ()
 
virtual void Accept (ParseNodeVisitor &visitor)=0
 
virtual void Accept (ParseNodeVisitor &visitor) const =0
 
virtual const TokenGetContextToken () const =0
 

Additional Inherited Members

- Public Types inherited from Bond::Symbol
enum  SymbolType {
  TYPE_NAMESPACE , TYPE_STRUCT , TYPE_ENUM , TYPE_LOCALSCOPE ,
  TYPE_VALUE , TYPE_FUNCTION
}
 
- Protected Member Functions inherited from Bond::Symbol
 Symbol ()
 
- Protected Member Functions inherited from Bond::ListParseNode
 ListParseNode ()
 
- Protected Member Functions inherited from Bond::ParseNode
 ParseNode ()
 

Constructor & Destructor Documentation

◆ Parameter() [1/2]

Bond::Parameter::Parameter ( const Token name,
TypeDescriptor typeDescriptor 
)
inline

◆ Parameter() [2/2]

Bond::Parameter::Parameter ( const TypeDescriptor typeDescriptor,
int32_t  offset 
)
inline

◆ ~Parameter()

virtual Bond::Parameter::~Parameter ( )
inlinevirtual

Member Function Documentation

◆ Accept() [1/2]

virtual void Bond::Parameter::Accept ( ParseNodeVisitor visitor) const
inlineoverridevirtual

Implements Bond::ParseNode.

◆ Accept() [2/2]

virtual void Bond::Parameter::Accept ( ParseNodeVisitor visitor)
inlineoverridevirtual

Implements Bond::ParseNode.

◆ GetName()

virtual const Token * Bond::Parameter::GetName ( ) const
inlineoverridevirtual

Reimplemented from Bond::Symbol.

◆ GetOffset()

int32_t Bond::Parameter::GetOffset ( ) const
inline

◆ GetSymbolType()

virtual SymbolType Bond::Parameter::GetSymbolType ( ) const
inlineoverridevirtual

Implements Bond::Symbol.

◆ GetTypeAndValue() [1/2]

virtual const TypeAndValue * Bond::Parameter::GetTypeAndValue ( ) const
inlineoverridevirtual

Reimplemented from Bond::Symbol.

◆ GetTypeAndValue() [2/2]

virtual TypeAndValue * Bond::Parameter::GetTypeAndValue ( )
inlineoverridevirtual

Reimplemented from Bond::Symbol.

◆ GetTypeDescriptor() [1/2]

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

◆ GetTypeDescriptor() [2/2]

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

◆ SetOffset()

void Bond::Parameter::SetOffset ( int32_t  offset) const
inline

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