#include <objc/message.h>
objc/message.h
macroOBJC_SUPER
#define OBJC_SUPER
structobjc_super
Specifies the superclass of an instance.
| id | receiver | Specifies an instance of a class. |
| Class | super_class | Specifies the particular superclass of the instance to message. |
functionobjc_msgSend
OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT void objc_msgSend(void /* id self, SEL op, ... */)
Basic Messaging Primitives
On some architectures, use objc_msgSend_stret for some struct return types.
On some architectures, use objc_msgSend_fpret for some float return types.
On some architectures, use objc_msgSend_fp2ret for some float return types.
These functions must be cast to an appropriate function pointer type
before being called.
functionobjc_msgSendSuper
OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT void objc_msgSendSuper(void /* struct objc_super *super, SEL op, ... */)
functionobjc_msgSend_stret
OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0) OBJC_ARM64_UNAVAILABLE OBJC_EXPORT void objc_msgSend_stret(void /* id self, SEL op, ... */)
not_available
Struct-returning Messaging Primitives
Use these functions to call methods that return structs on the stack.
On some architectures, some structures are returned in registers.
Consult your local function call ABI documentation for details.
These functions must be cast to an appropriate function pointer type
before being called.
functionobjc_msgSendSuper_stret
OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0) OBJC_ARM64_UNAVAILABLE OBJC_EXPORT void objc_msgSendSuper_stret(void /* struct objc_super *super, SEL op, ... */)
not_available
functionmethod_invoke
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT void method_invoke(void /* id receiver, Method m, ... */)
Direct Method Invocation Primitives
Use these functions to call the implementation of a given Method.
This is faster than calling method_getImplementation() and method_getName().
The receiver must not be nil.
These functions must be cast to an appropriate function pointer type
before being called.
functionmethod_invoke_stret
OBJC_AVAILABLE(10.5, 2.0, 9.0, 1.0, 2.0) OBJC_ARM64_UNAVAILABLE OBJC_EXPORT void method_invoke_stret(void /* id receiver, Method m, ... */)
not_available
function_objc_msgForward
OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0) OBJC_EXPORT void _objc_msgForward(void /* id receiver, SEL sel, ... */)
Message Forwarding Primitives
Use these functions to forward a message as if the receiver did not
respond to it.
The receiver must not be nil.
class_getMethodImplementation() may return (IMP)_objc_msgForward.
class_getMethodImplementation_stret() may return (IMP)_objc_msgForward_stret
These functions must be cast to an appropriate function pointer type
before being called.
Before Mac OS X 10.6, _objc_msgForward must not be called directly
but may be compared to other IMP values.
function_objc_msgForward_stret
OBJC_AVAILABLE(10.6, 3.0, 9.0, 1.0, 2.0) OBJC_ARM64_UNAVAILABLE OBJC_EXPORT void _objc_msgForward_stret(void /* id receiver, SEL sel, ... */)
not_available