top | up | prev | next

PointerCountIntrinsicFunction Class

Definition at line 605 of Meta.cpp

Constructors

PointerCountIntrinsicFunction()

Member Functions

int Arity() const override
std::unique_ptr<Value> DoEvaluate(const std::vector<std::unique_ptr<Value>>& arguments, const std::vector<TypeSymbol*>& templateArguments, const Span& span, const boost::uuids::uuid& moduleId) override
const char* GroupName() const override
int NumberOfTypeParameters() const override
TypeSymbol* ReturnType(SymbolTable& symbolTable) const override

Constructor Details

PointerCountIntrinsicFunction Constructor

cmajor::symbols::PointerCountIntrinsicFunction::PointerCountIntrinsicFunction()

Definition at line 620 of Meta.cpp :
620 : IntrinsicFunction()
621 {
622 }


Declaration at line 608 of Meta.cpp


Member Function Details

Arity Member Function

int cmajor::symbols::PointerCountIntrinsicFunction::Arity() const override

Definition at line 609 of Meta.cpp :
609 { return 0; }

Base class overridden functions: cmajor::symbols::IntrinsicFunction::Arity


DoEvaluate Member Function

std::unique_ptr<Value > cmajor::symbols::PointerCountIntrinsicFunction::DoEvaluate(const std::vector<std::unique_ptr<Value >>& arguments, const std::vector<TypeSymbol *>& templateArguments, const Span& span, const boost::uuids::uuid& moduleId) override

Definition at line 613 of Meta.cpp :
614 {
615     TypeSymbol* type = templateArguments.front();
616     return std::unique_ptr<Value>(new IntValue(spanmoduleIdtype->PointerCount()));
617 }


Base class overridden functions: cmajor::symbols::IntrinsicFunction::DoEvaluate

Calls: cmajor::symbols::TypeSymbol::PointerCount


GroupName Member Function

const char * cmajor::symbols::PointerCountIntrinsicFunction::GroupName() const override

Definition at line 612 of Meta.cpp :
612 { return "PointerCount"; }

Base class overridden functions: cmajor::symbols::IntrinsicFunction::GroupName


NumberOfTypeParameters Member Function

int cmajor::symbols::PointerCountIntrinsicFunction::NumberOfTypeParameters() const override

Definition at line 610 of Meta.cpp :
610 { return 1; }

Base class overridden functions: cmajor::symbols::IntrinsicFunction::NumberOfTypeParameters


ReturnType Member Function

TypeSymbol * cmajor::symbols::PointerCountIntrinsicFunction::ReturnType(SymbolTable & symbolTable) const override

Definition at line 611 of Meta.cpp :
611 { return symbolTable.GetTypeByName(U"int"); }

Base class overridden functions: cmajor::symbols::IntrinsicFunction::ReturnType

Calls: cmajor::symbols::SymbolTable::GetTypeByName


top | up | prev | next