Qore reflection Module 2.0.0
All Classes Namespaces Functions Variables Modules Pages
Qore::Reflection::CopyMethodVariant Class Reference

The class for Qore class copy method variants. More...

#include <QC_CopyMethodVariant.dox.h>

Inheritance diagram for Qore::Reflection::CopyMethodVariant:
Qore::Reflection::AbstractMethodVariant Qore::Reflection::AbstractVariant

Public Member Methods

auto call (object obj)
 calls the given copy method variant with the given object; the object must be a member of a compatible class
 
 constructor ()
 Throws an exception if called directly; this class can only be instantiated by builtin subclasses.
 
- Public Member Methods inherited from Qore::Reflection::AbstractMethodVariant
 constructor ()
 Throws an exception if called directly; this class can only be instantiated by builtin subclasses.
 
string getAccessModifierString ()
 returns a string for the access modifier for the method variant
 
AbstractClass getClass ()
 Returns the class for the variant.
 
AbstractMethod getMethod ()
 Returns the method for the method variant.
 
bool isAbstract ()
 returns True if the variant is abstract
 
bool isFinal ()
 returns True if the variant is final
 
- Public Member Methods inherited from Qore::Reflection::AbstractVariant
 constructor ()
 Throws an exception if called directly; this class can only be instantiated by builtin subclasses.
 
bool empty ()
 returns True if the variant has no code implementation; False if it does
 
list< stringgetCodeFlagList ()
 returns a list of strings of code flags describing the variant
 
int getCodeFlags ()
 returns a bitfield of code flags describing the variant
 
list< auto > getDefaultArgs ()
 returns a list of default arguments for parameters for the variant; if the variant has no parameters, an empty list is returned
 
int getDomain ()
 returns the functional domain of the variant (for builtin variants only) as a bitfield of Functional Domain Constants
 
list< stringgetDomainStringList ()
 returns a list of functional domain strings for the variant (for builtin variants only); an empty list is returned for user variants
 
AbstractReflectionFunction getFunction ()
 Returns the abstract function object that contains the variant.
 
list< stringgetModifierList ()
 returns a list of strings of modifiers describing the variant
 
int getModifiers ()
 returns a bitfield of modifiers describing the variant
 
list< stringgetParamNames ()
 returns a list of parameter variable name for the variant; if the variant has no parameters, an empty list is returned
 
string getParamString ()
 returns a string giving a list of the parameters of the variant, including types, variable names, and default values
 
list< TypegetParamTypes ()
 returns a list of parameter types for the variant; if the variant has no parameters, an empty list is returned
 
Type getReturnType ()
 returns the return type of the variant
 
string getReturnTypeString ()
 returns a string for the return type
 
hash< SourceLocationInfogetSourceLocation ()
 Returns the source location of the variant declaration.
 
bool hasBody ()
 returns True if the variant has a code implementation; False if not (i.e. it is empty)
 
bool isBuiltin ()
 returns True if the variant is a builtin variant
 
bool isEqual (AbstractVariant variant)
 Returns True if the variant passed as an argument is equal to the current object; False if not.
 
bool isInjected ()
 returns True if the function or method that the variant belongs to (and therefore the variant itself) has been injected as a dependency injection
 
bool isMethodVariant ()
 returns True if the variant is a method variant but not a pseudo-method variant
 
bool isPseudoMethodVariant ()
 returns True if the object is a pseudo-method variant
 
bool isUser ()
 returns True if the variant is a user variant
 
int numParams ()
 returns the number of parameters in the signature
 
string toString ()
 returns a string for the variant's signature including any modifiers ("synchronized", "private", etc), the return type, the class name (if any, without a namespace prefix and followed by "::"), and the function or method name followed by parameter types in parentheses
 

Detailed Description

The class for Qore class copy method variants.

Restrictions:
Qore::PO_NO_REFLECTION

This class cannot be instantiated directly and also cannot be directly inherited by user-defined classes.

See also
CopyMethod
Since
Qore 0.9.0

Member Function Documentation

◆ call()

auto Qore::Reflection::CopyMethodVariant::call ( object  obj)

calls the given copy method variant with the given object; the object must be a member of a compatible class

Example:
auto v = m.call(obj);
Parameters
objthe object to make the call on; must be an object of the class implementing the method or a METHOD-ERROR exception is thrown
Returns
the new object created by the call
Exceptions
PROGRAM-ERRORthrown if the Program object holding the class and method has been destroyed
METHOD-ERRORthe object was not instantiated from the class implementing this method

◆ constructor()

Qore::Reflection::CopyMethodVariant::constructor ( )

Throws an exception if called directly; this class can only be instantiated by builtin subclasses.

Exceptions
COPYMETHODVARIANT-CONSTRUCTOR-ERRORthis exception is thrown if this class is constructed directly (also if directly inherited by user classes)

The documentation for this class was generated from the following file: