top | up | prev | next

IntrinsicFunction Abstract Class

Definition at line 14 of Meta.hpp

Constructors

IntrinsicFunction()

Member Functions

int Arity() const pure virtual
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) pure virtual
std::unique_ptr<Value> Evaluate(const std::vector<std::unique_ptr<Value>>& arguments, const std::vector<TypeSymbol*>& templateArguments, const Span& span, const boost::uuids::uuid& moduleId)
const char* GroupName() const pure virtual
int NumberOfTypeParameters() const pure virtual
TypeSymbol* ReturnType(SymbolTable& symbolTable) const pure virtual

Constructor Details

IntrinsicFunction Constructor

cmajor::symbols::IntrinsicFunction::IntrinsicFunction()

Definition at line 17 of Meta.cpp :
 18 {
 19 }


Declaration at line 17 of Meta.hpp


Member Function Details

Arity Member Function

int cmajor::symbols::IntrinsicFunction::Arity() const pure virtual

Definition at line 19 of Meta.hpp

Derived class overrides: cmajor::symbols::ArrayLengthIntrinsicFunction::Arity , cmajor::symbols::PointerCountIntrinsicFunction::Arity , cmajor::symbols::TypePredicate::Arity

Called by: cmajor::symbols::IntrinsicFunction::Evaluate


DoEvaluate Member Function

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

Definition at line 23 of Meta.hpp

Derived class overrides: cmajor::symbols::ArrayLengthIntrinsicFunction::DoEvaluate , cmajor::symbols::IsArrayTypePredicate::DoEvaluate , cmajor::symbols::IsBasicTypePredicate::DoEvaluate , cmajor::symbols::IsBoolTypePredicate::DoEvaluate , cmajor::symbols::IsByteTypePredicate::DoEvaluate , cmajor::symbols::IsCharTypePredicate::DoEvaluate , cmajor::symbols::IsClassDelegateTypePredicate::DoEvaluate , cmajor::symbols::IsClassTypePredicate::DoEvaluate , cmajor::symbols::IsConstTypePredicate::DoEvaluate , cmajor::symbols::IsDelegateTypePredicate::DoEvaluate , cmajor::symbols::IsDoubleTypePredicate::DoEvaluate , cmajor::symbols::IsEnumeratedTypePredicate::DoEvaluate , cmajor::symbols::IsFloatTypePredicate::DoEvaluate , cmajor::symbols::IsFloatingPointTypePredicate::DoEvaluate , cmajor::symbols::IsGenericPtrTypePredicate::DoEvaluate , cmajor::symbols::IsIntTypePredicate::DoEvaluate , cmajor::symbols::IsIntegralTypePredicate::DoEvaluate , cmajor::symbols::IsInterfaceTypePredicate::DoEvaluate , cmajor::symbols::IsLongTypePredicate::DoEvaluate , cmajor::symbols::IsLvalueReferenceTypePredicate::DoEvaluate , cmajor::symbols::IsPointerTypePredicate::DoEvaluate , cmajor::symbols::IsPolymorphicTypePredicate::DoEvaluate , cmajor::symbols::IsReferenceTypePredicate::DoEvaluate , cmajor::symbols::IsRvalueReferenceTypePredicate::DoEvaluate , cmajor::symbols::IsSByteTypePredicate::DoEvaluate , cmajor::symbols::IsShortTypePredicate::DoEvaluate , cmajor::symbols::IsSignedTypePredicate::DoEvaluate , cmajor::symbols::IsUCharTypePredicate::DoEvaluate , cmajor::symbols::IsUIntTypePredicate::DoEvaluate , cmajor::symbols::IsULongTypePredicate::DoEvaluate , cmajor::symbols::IsUShortTypePredicate::DoEvaluate , cmajor::symbols::IsUnsignedTypePredicate::DoEvaluate , cmajor::symbols::IsVoidTypePredicate::DoEvaluate , cmajor::symbols::IsWCharTypePredicate::DoEvaluate , cmajor::symbols::PointerCountIntrinsicFunction::DoEvaluate

Called by: cmajor::symbols::IntrinsicFunction::Evaluate


Evaluate Member Function

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

Definition at line 25 of Meta.cpp
Declaration at line 24 of Meta.hpp

Calls: cmajor::symbols::IntrinsicFunction::Arity , cmajor::symbols::IntrinsicFunction::DoEvaluate , cmajor::symbols::IntrinsicFunction::GroupName , cmajor::symbols::IntrinsicFunction::NumberOfTypeParameters


GroupName Member Function

const char * cmajor::symbols::IntrinsicFunction::GroupName() const pure virtual

Definition at line 20 of Meta.hpp

Derived class overrides: cmajor::symbols::ArrayLengthIntrinsicFunction::GroupName , cmajor::symbols::IsArrayTypePredicate::GroupName , cmajor::symbols::IsBasicTypePredicate::GroupName , cmajor::symbols::IsBoolTypePredicate::GroupName , cmajor::symbols::IsByteTypePredicate::GroupName , cmajor::symbols::IsCharTypePredicate::GroupName , cmajor::symbols::IsClassDelegateTypePredicate::GroupName , cmajor::symbols::IsClassTypePredicate::GroupName , cmajor::symbols::IsConstTypePredicate::GroupName , cmajor::symbols::IsDelegateTypePredicate::GroupName , cmajor::symbols::IsDoubleTypePredicate::GroupName , cmajor::symbols::IsEnumeratedTypePredicate::GroupName , cmajor::symbols::IsFloatTypePredicate::GroupName , cmajor::symbols::IsFloatingPointTypePredicate::GroupName , cmajor::symbols::IsGenericPtrTypePredicate::GroupName , cmajor::symbols::IsIntTypePredicate::GroupName , cmajor::symbols::IsIntegralTypePredicate::GroupName , cmajor::symbols::IsInterfaceTypePredicate::GroupName , cmajor::symbols::IsLongTypePredicate::GroupName , cmajor::symbols::IsLvalueReferenceTypePredicate::GroupName , cmajor::symbols::IsPointerTypePredicate::GroupName , cmajor::symbols::IsPolymorphicTypePredicate::GroupName , cmajor::symbols::IsReferenceTypePredicate::GroupName , cmajor::symbols::IsRvalueReferenceTypePredicate::GroupName , cmajor::symbols::IsSByteTypePredicate::GroupName , cmajor::symbols::IsShortTypePredicate::GroupName , cmajor::symbols::IsSignedTypePredicate::GroupName , cmajor::symbols::IsUCharTypePredicate::GroupName , cmajor::symbols::IsUIntTypePredicate::GroupName , cmajor::symbols::IsULongTypePredicate::GroupName , cmajor::symbols::IsUShortTypePredicate::GroupName , cmajor::symbols::IsUnsignedTypePredicate::GroupName , cmajor::symbols::IsVoidTypePredicate::GroupName , cmajor::symbols::IsWCharTypePredicate::GroupName , cmajor::symbols::PointerCountIntrinsicFunction::GroupName

Called by: cmajor::symbols::IntrinsicFunction::Evaluate


NumberOfTypeParameters Member Function

int cmajor::symbols::IntrinsicFunction::NumberOfTypeParameters() const pure virtual

Definition at line 21 of Meta.hpp

Derived class overrides: cmajor::symbols::ArrayLengthIntrinsicFunction::NumberOfTypeParameters , cmajor::symbols::PointerCountIntrinsicFunction::NumberOfTypeParameters , cmajor::symbols::TypePredicate::NumberOfTypeParameters

Called by: cmajor::symbols::IntrinsicFunction::Evaluate


ReturnType Member Function

TypeSymbol * cmajor::symbols::IntrinsicFunction::ReturnType(SymbolTable & symbolTable) const pure virtual

Definition at line 22 of Meta.hpp

Derived class overrides: cmajor::symbols::ArrayLengthIntrinsicFunction::ReturnType , cmajor::symbols::PointerCountIntrinsicFunction::ReturnType , cmajor::symbols::TypePredicate::ReturnType


top | up | prev | next