Represents information about an interface method recorded in a ReflectedInterface.
$struct+ ReflectedInterfaceMethod
{
$bool IsConst() const { return m_isConst; }
$ConstStringZ GetName() const { return m_name; }
$ssize_t GetNumArgs() const { return m_numArgs; }
$const ReflectedArg& GetArg(ssize_t i) const { return m_args[i]; }
//////////////// State //////////////////
ConstStringZ m_name;
ReflectedReturnType m_returnType;
const ReflectedArg* m_args;
ssize_t m_numArgs;
const octet_t* m_metaData;
bool m_isConst;
};
const ReflectedFunction& AsReflectedFunction(const ReflectedInterfaceMethod& rim);
ConstStringZ m_name
The name of the method represented as a pointer to a UTF-8 encoded null-terminated string (see ConstStringZ).
ReflectedReturnType m_returnType
The ReflectedReturnType records the method return type.
const ReflectedArg* m_args
Pointer to an array of ReflectedArg to record the names and types of the method arguments, or null if there are zero arguments.
ssize_t m_numArgs
The number of elements in the m_args array.
const octet_t* m_metaData
Pointer to metadata byte code on the method or null if no metadata declared.
bool m_isConst
If true then the method was declared with the 'const' qualifier. A const method doesn't mutate the underlying object.