top | up | prev | next

UuidValue Abstract Class

Definition at line 455 of Value.hpp

Constructors

UuidValue(const Span& span_, const boost::uuids::uuid& moduleId_, int uuidId_)

Member Functions

Value* As(TypeSymbol* targetType, bool cast, const Span& span, const boost::uuids::uuid& moduleId, bool dontThrow) const
const char* ClassName() const override
Value* Clone() const override
TypeSymbol* GetType(SymbolTable* symbolTable) override
void* IrValue(Emitter& emitter)
void Read(BinaryReader& reader) override
int UuidId() const
void Write(BinaryWriter& writer) override

Member Variables

int uuidId

Constructor Details

UuidValue Constructor

cmajor::symbols::UuidValue::UuidValue(const Span& span_, const boost::uuids::uuid& moduleId_, int uuidId_)

Definition at line 4168 of Value.cpp :
4168 : Value(span_moduleId_ValueType::uuidValue)uuidId(uuidId_)
4169 {
4170 }



Member Function Details

As Member Function

Value * cmajor::symbols::UuidValue::As(TypeSymbol * targetType, bool cast, const Span& span, const boost::uuids::uuid& moduleId, bool dontThrow) const

Definition at line 4188 of Value.cpp

Calls: cmajor::symbols::TypeSymbol::GetValueType , cmajor::symbols::Value::GetValueType


ClassName Member Function

const char * cmajor::symbols::UuidValue::ClassName() const override

Definition at line 466 of Value.hpp :
466 { return "UuidValue"; }

Base class overridden functions: cmajor::symbols::Value::ClassName


Clone Member Function

Value * cmajor::symbols::UuidValue::Clone() const override

Definition at line 459 of Value.hpp :
459 { return new UuidValue(GetSpan()ModuleId()uuidId); }

Base class overridden functions: cmajor::symbols::Value::Clone

Calls: cmajor::symbols::Value::GetSpan , cmajor::symbols::Value::ModuleId


GetType Member Function

TypeSymbol * cmajor::symbols::UuidValue::GetType(SymbolTable * symbolTable) override

Definition at line 4210 of Value.cpp :
4211 {
4212     return symbolTable->GetTypeByName(U"void")->AddPointer(GetSpan()ModuleId());
4213 }


Declaration at line 464 of Value.hpp

Base class overridden functions: cmajor::symbols::Value::GetType

Calls: cmajor::symbols::SymbolTable::GetTypeByName , cmajor::symbols::TypeSymbol::AddPointer , cmajor::symbols::Value::GetSpan , cmajor::symbols::Value::ModuleId


IrValue Member Function

void * cmajor::symbols::UuidValue::IrValue(Emitter& emitter)

Definition at line 4172 of Value.cpp :
4173 {
4174     void* uuidConstant = emitter.GetGlobalUuidConstant(uuidId);
4175     return emitter.CreateIrValueForUuid(uuidConstant);
4176 }



Read Member Function

void cmajor::symbols::UuidValue::Read(BinaryReader& reader) override

Definition at line 4183 of Value.cpp :
4184 {
4185     Assert(false"read for uuid value not supported");
4186 }


Declaration at line 462 of Value.hpp

Base class overridden functions: cmajor::symbols::Value::Read


UuidId Member Function

int cmajor::symbols::UuidValue::UuidId() const

Definition at line 465 of Value.hpp :
465 { return uuidId; }


Write Member Function

void cmajor::symbols::UuidValue::Write(BinaryWriter& writer) override

Definition at line 4178 of Value.cpp :
4179 {
4180     Assert(false"write for uuid value not supported");
4181 }


Declaration at line 461 of Value.hpp

Base class overridden functions: cmajor::symbols::Value::Write


top | up | prev | next