top | up | prev | next

StructuredReferenceValue Class

Definition at line 114 of Evaluator.cpp

Constructors

StructuredReferenceValue(StructuredValue* structuredValue_)

Member Functions

Value* As(TypeSymbol* targetType, bool cast, const Span& span, const boost::uuids::uuid& moduleId_, bool dontThrow) const override
Value* Clone() const override
StructuredValue* GetStructuredValue() const
TypeSymbol* GetType(SymbolTable* symbolTable) override
void* IrValue(Emitter& emitter) override
bool IsStructuredReferenceValue() const override
void Read(BinaryReader& reader) override
void Write(BinaryWriter& writer) override

Member Variables

StructuredValue* structuredValue

Constructor Details

StructuredReferenceValue Constructor

cmajor::binder::StructuredReferenceValue::StructuredReferenceValue(StructuredValue* structuredValue_)

Definition at line 130 of Evaluator.cpp :
 130 : Value(structuredValue_->GetSpan()structuredValue_->ModuleId()ValueType::none)structuredValue(structuredValue_)
 131 {
 132 }


Declaration at line 117 of Evaluator.cpp


Member Function Details

As Member Function

Value* cmajor::binder::StructuredReferenceValue::As(TypeSymbol* targetType, bool cast, const Span& span, const boost::uuids::uuid& moduleId_, bool dontThrow) const override

Definition at line 122 of Evaluator.cpp :
 122 { Assert(false"structured reference value cannot be converted"); return nullptr; }


Clone Member Function

Value* cmajor::binder::StructuredReferenceValue::Clone() const override

Definition at line 119 of Evaluator.cpp :
 119 { return new StructuredReferenceValue(structuredValue); }


GetStructuredValue Member Function

StructuredValue* cmajor::binder::StructuredReferenceValue::GetStructuredValue() const

Definition at line 125 of Evaluator.cpp :
 125 { return structuredValue; }


GetType Member Function

TypeSymbol* cmajor::binder::StructuredReferenceValue::GetType(SymbolTable* symbolTable) override

Definition at line 124 of Evaluator.cpp :
 124 { return structuredValue->GetType(symbolTable); }

Calls: cmajor::binder::StructuredReferenceValue::GetType

Called by: cmajor::binder::StructuredReferenceValue::GetType


IrValue Member Function

void * cmajor::binder::StructuredReferenceValue::IrValue(Emitter& emitter) override

Definition at line 123 of Evaluator.cpp :
 123 { Assert(false"structured reference does not have ir value"); return nullptr; }


IsStructuredReferenceValue Member Function

bool cmajor::binder::StructuredReferenceValue::IsStructuredReferenceValue() const override

Definition at line 118 of Evaluator.cpp :
 118 { return true; }


Read Member Function

void cmajor::binder::StructuredReferenceValue::Read(BinaryReader& reader) override

Definition at line 121 of Evaluator.cpp :
 121 {}


Write Member Function

void cmajor::binder::StructuredReferenceValue::Write(BinaryWriter& writer) override

Definition at line 120 of Evaluator.cpp :
 120 {}


top | up | prev | next