top | up | prev | next

LvalueReferenceCopyAssignment Class

Definition at line 1100 of OperationRepository.cpp

Constructors

LvalueReferenceCopyAssignment(TypeSymbol* type_, TypeSymbol* voidType_, const Span& span, const boost::uuids::uuid& moduleId)

Member Functions

const char* ClassName() const override
SymbolAccess DeclaredAccess() const override
void GenerateCall(Emitter& emitter, std::vector<GenObject*>& genObjects, OperationFlags flags, const Span& span, const boost::uuids::uuid& moduleId) override
bool IsBasicTypeOperation() const override
bool IsLvalueReferenceCopyAssignment() const override

Member Variables

TypeSymbol* type

Constructor Details

LvalueReferenceCopyAssignment Constructor

cmajor::binder::LvalueReferenceCopyAssignment::LvalueReferenceCopyAssignment(TypeSymbol* type_, TypeSymbol* voidType_, const Span& span, const boost::uuids::uuid& moduleId)

Definition at line 1113 of OperationRepository.cpp
Declaration at line 1103 of OperationRepository.cpp


Member Function Details

ClassName Member Function

const char * cmajor::binder::LvalueReferenceCopyAssignment::ClassName() const override

Definition at line 1108 of OperationRepository.cpp :
1108 { return "LvalueReferenceCopyAssignment"; }


DeclaredAccess Member Function

SymbolAccess cmajor::binder::LvalueReferenceCopyAssignment::DeclaredAccess() const override

Definition at line 1104 of OperationRepository.cpp :
1104 { return SymbolAccess::public_; }


GenerateCall Member Function

void cmajor::binder::LvalueReferenceCopyAssignment::GenerateCall(Emitter& emitter, std::vector<GenObject*>& genObjects, OperationFlags flags, const Span& span, const boost::uuids::uuid& moduleId) override

Definition at line 1128 of OperationRepository.cpp :
1129 {
1130     Assert(genObjects.size() == 2"copy assignment needs two objects");
1131     genObjects[1]->Load(emitterOperationFlags::none);
1132     genObjects[0]->Store(emitterOperationFlags::none);
1133 }


Declaration at line 1105 of OperationRepository.cpp


IsBasicTypeOperation Member Function

bool cmajor::binder::LvalueReferenceCopyAssignment::IsBasicTypeOperation() const override

Definition at line 1106 of OperationRepository.cpp :
1106 { return true; }


IsLvalueReferenceCopyAssignment Member Function

bool cmajor::binder::LvalueReferenceCopyAssignment::IsLvalueReferenceCopyAssignment() const override

Definition at line 1107 of OperationRepository.cpp :
1107 { return true; }


top | up | prev | next