15 typedef void (* InvokeFunction)(
16 int which, QtPrivate::QSlotObjectBase*, QObject*,
void**,
bool* );
20 TypeInfo = NumOperations + 1
26 inline const int* parameterTypes()
const
28 return m_parameterTypes;
31 inline void setParameterTypes(
const int* types )
33 m_parameterTypes = types;
38 const int* parameterTypes =
nullptr ):
40 m_parameterTypes( parameterTypes )
45 const int* m_parameterTypes;
57 FunctionCall( &invoke ),
58 m_function( function )
62 static void invoke(
int which, QSlotObjectBase* functionCall,
63 QObject*
object,
void** args,
bool* ret )
69 delete static_cast< MetaCall*
>( functionCall );
74 using FuncType = QtPrivate::FunctionPointer< Function >;
76 FuncType::template call< Args, R >(
77 static_cast< MetaCall*
>( functionCall )->m_function,
object, args );
82 *ret =
reinterpret_cast< MetaCall*
>( args )->m_function
83 ==
static_cast< MetaCall*
>( functionCall )->m_function;
89 *
reinterpret_cast< int*
>( args ) = QskMetaFunction::StaticFunction;
106 FunctionCall( &invoke ),
107 m_function( function )
111 static void invoke(
int which, QSlotObjectBase* functionCall,
112 QObject*
object,
void** args,
bool* )
118 delete static_cast< MetaCall*
>( functionCall );
123 using FuncType = QtPrivate::FunctionPointer< Function >;
125 FuncType::template call< Args, R >(
126 static_cast< MetaCall*
>( functionCall )->m_function,
127 static_cast< typename FuncType::Object*
>(
object ), args );
133 *
reinterpret_cast< int*
>( args ) = QskMetaFunction::MemberFunction;
150 FunctionCall( &invoke ),
151 m_function( function )
155 static void invoke(
int which, QSlotObjectBase* functionCall,
156 QObject*
object,
void** args,
bool* )
162 delete static_cast< MetaCall*
>( functionCall );
167#if QT_VERSION < QT_VERSION_CHECK( 6, 7, 0 )
168 using FuncType = QtPrivate::Functor< Function, N >;
170 using FuncType = QtPrivate::Callable< Function, Args >;
173 FuncType::template call< Args, R >(
174 static_cast< MetaCall*
>( functionCall )->m_function,
object, args );
180 *
reinterpret_cast< int*
>( args ) = QskMetaFunction::Functor;