Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QMetaMethodInvoker Class Reference

#include <qmetaobject_p.h>

+ Inheritance diagram for QMetaMethodInvoker:
+ Collaboration diagram for QMetaMethodInvoker:

Public Types

enum class  InvokeFailReason : int {
  ReturnTypeMismatch = -1 , DeadLockDetected = -2 , CallViaVirtualFailed = -3 , ConstructorCallOnObject = -4 ,
  ConstructorCallWithoutResult = -5 , ConstructorCallFailed = -6 , CouldNotQueueParameter = -0x1000 , None = 0 ,
  TooFewArguments , FormalParameterMismatch = 0x1000
}
 
- Public Types inherited from QMetaMethod
enum  Access { Private , Protected , Public }
 This enum describes the access level of a method, following the conventions used in C++. More...
 
enum  MethodType { Method , Signal , Slot , Constructor }
 \value Method The function is a plain member function. More...
 
enum  Attributes { Compatibility = 0x1 , Cloned = 0x2 , Scriptable = 0x4 }
 

Static Public Member Functions

static InvokeFailReason Q_CORE_EXPORT invokeImpl (QMetaMethod self, void *target, Qt::ConnectionType, qsizetype paramCount, const void *const *parameters, const char *const *typeNames, const QtPrivate::QMetaTypeInterface *const *metaTypes)
 
- Static Public Member Functions inherited from QMetaMethod
template<typename PointerToMemberFunction >
static QMetaMethod fromSignal (PointerToMemberFunction signal)
 

Additional Inherited Members

- Public Member Functions inherited from QMetaMethod
constexpr QMetaMethod ()
 
QByteArray methodSignature () const
 
QByteArray name () const
 
const char * typeName () const
 Returns the return type name of this method.
 
int returnType () const
 
QMetaType returnMetaType () const
 
int parameterCount () const
 
int parameterType (int index) const
 
QMetaType parameterMetaType (int index) const
 
void getParameterTypes (int *types) const
 
QList< QByteArrayparameterTypes () const
 Returns a list of parameter types.
 
QByteArray parameterTypeName (int index) const
 
QList< QByteArrayparameterNames () const
 Returns a list of parameter names.
 
const char * tag () const
 Returns the tag associated with this method.
 
Access access () const
 Returns the access specification of this method (private, protected, or public).
 
MethodType methodType () const
 Returns the type of this method (signal, slot, or method).
 
int attributes () const
 
int methodIndex () const
 
int relativeMethodIndex () const
 
int revision () const
 
bool isConst () const
 
const QMetaObjectenclosingMetaObject () const
 
bool invoke (QObject *object, Qt::ConnectionType connectionType, QGenericReturnArgument returnValue, QGenericArgument val0=QGenericArgument(nullptr), QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument(), QGenericArgument val4=QGenericArgument(), QGenericArgument val5=QGenericArgument(), QGenericArgument val6=QGenericArgument(), QGenericArgument val7=QGenericArgument(), QGenericArgument val8=QGenericArgument(), QGenericArgument val9=QGenericArgument()) const
 \obsolete [6.5] Please use the variadic overload of this function
 
bool invoke (QObject *object, QGenericReturnArgument returnValue, QGenericArgument val0=QGenericArgument(nullptr), QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument(), QGenericArgument val4=QGenericArgument(), QGenericArgument val5=QGenericArgument(), QGenericArgument val6=QGenericArgument(), QGenericArgument val7=QGenericArgument(), QGenericArgument val8=QGenericArgument(), QGenericArgument val9=QGenericArgument()) const
 
bool invoke (QObject *object, Qt::ConnectionType connectionType, QGenericArgument val0, QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument(), QGenericArgument val4=QGenericArgument(), QGenericArgument val5=QGenericArgument(), QGenericArgument val6=QGenericArgument(), QGenericArgument val7=QGenericArgument(), QGenericArgument val8=QGenericArgument(), QGenericArgument val9=QGenericArgument()) const
 
bool invoke (QObject *object, QGenericArgument val0, QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument(), QGenericArgument val4=QGenericArgument(), QGenericArgument val5=QGenericArgument(), QGenericArgument val6=QGenericArgument(), QGenericArgument val7=QGenericArgument(), QGenericArgument val8=QGenericArgument(), QGenericArgument val9=QGenericArgument()) const
 
bool invokeOnGadget (void *gadget, QGenericReturnArgument returnValue, QGenericArgument val0=QGenericArgument(nullptr), QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument(), QGenericArgument val4=QGenericArgument(), QGenericArgument val5=QGenericArgument(), QGenericArgument val6=QGenericArgument(), QGenericArgument val7=QGenericArgument(), QGenericArgument val8=QGenericArgument(), QGenericArgument val9=QGenericArgument()) const
 
bool invokeOnGadget (void *gadget, QGenericArgument val0, QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument(), QGenericArgument val4=QGenericArgument(), QGenericArgument val5=QGenericArgument(), QGenericArgument val6=QGenericArgument(), QGenericArgument val7=QGenericArgument(), QGenericArgument val8=QGenericArgument(), QGenericArgument val9=QGenericArgument()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \obsolete [6.5] Please use the variadic overload of this function.
 
template<typename ReturnArg , typename... Args>
QtPrivate::Invoke::IfNotOldStyleArgs< bool, Args... > invoke (QObject *obj, Qt::ConnectionType c, QTemplatedMetaMethodReturnArgument< ReturnArg > r, Args &&... arguments) const
 
template<typename... Args>
QtPrivate::Invoke::IfNotOldStyleArgs< bool, Args... > invoke (QObject *obj, Qt::ConnectionType c, Args &&... arguments) const
 
template<typename ReturnArg , typename... Args>
QtPrivate::Invoke::IfNotOldStyleArgs< bool, Args... > invoke (QObject *obj, QTemplatedMetaMethodReturnArgument< ReturnArg > r, Args &&... arguments) const
 
template<typename... Args>
QtPrivate::Invoke::IfNotOldStyleArgs< bool, Args... > invoke (QObject *obj, Args &&... arguments) const
 
template<typename ReturnArg , typename... Args>
QtPrivate::Invoke::IfNotOldStyleArgs< bool, Args... > invokeOnGadget (void *gadget, QTemplatedMetaMethodReturnArgument< ReturnArg > r, Args &&... arguments) const
 
template<typename... Args>
QtPrivate::Invoke::IfNotOldStyleArgs< bool, Args... > invokeOnGadget (void *gadget, Args &&... arguments) const
 
bool isValid () const
 
- Protected Attributes inherited from QMetaMethod
const QMetaObjectmobj
 
Data data
 

Detailed Description

Definition at line 134 of file qmetaobject_p.h.

Member Enumeration Documentation

◆ InvokeFailReason

enum class QMetaMethodInvoker::InvokeFailReason : int
strong
Enumerator
ReturnTypeMismatch 
DeadLockDetected 
CallViaVirtualFailed 
ConstructorCallOnObject 
ConstructorCallWithoutResult 
ConstructorCallFailed 
CouldNotQueueParameter 
None 
TooFewArguments 
FormalParameterMismatch 

Definition at line 139 of file qmetaobject_p.h.

Member Function Documentation

◆ invokeImpl()

auto QMetaMethodInvoker::invokeImpl ( QMetaMethod self,
void * target,
Qt::ConnectionType connectionType,
qsizetype paramCount,
const void *const * parameters,
const char *const * typeNames,
const QtPrivate::QMetaTypeInterface *const * metaTypes )
static

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