Expand description
Raw bindings to Objective-C runtimes
These bindings contain almost no documentation, so it is highly recommended to read the documentation of the original libraries:
- Apple’s official documentation.
- Apple’s
objc4source code, in particularruntime.h. - GNUStep’s
libobjc2source code, in particularruntime.h.
See also the README.md for more
background information, and for how to configure the desired runtime.
Structs
- An opaque type that represents an Objective-C class.
- An opaque type that represents an instance variable.
- A type that represents a method in a class definition.
- Describes an Objective-C method.
- An opaque type that represents an object / an instance of a class.
- An opaque type that describes a property in a class.
- Describes an Objective-C property attribute.
- Opaque type for Objective-C protocols.
- An opaque type that represents a method selector.
- Specifies data used when sending messages to superclasses.
Constants
- The equivalent of
falsefor Objective-C’sBOOLtype. - The maximum value for a
NSInteger. - The minimum value for a
NSInteger. - The maximum value for a
NSUInteger. - A quick alias for a
null_mutclass. - Specifies a weak reference to the associated object.
- Specifies that the associated object is copied.
- Specifies that the associated object is copied.
- Specifies a strong reference to the associated object.
- Specifies a strong reference to the associated object.
- Only relevant before macOS 10.13
- OBJC_SYNC_SUCCESS
apple - OBJC_SYNC_TIMED_OUT
appleOnly relevant before macOS 10.13 - The equivalent of
truefor Objective-C’sBOOLtype. - A quick alias for a
null_mutobject / instance.
Functions
- _objc_msgForward⚠
apple - _objc_msgForward_stret⚠
appleand non-AArch64 - class_addIvar⚠Non-
objfw - class_addProperty⚠Non-
objfw - class_addProtocol⚠Non-
objfw - class_copyIvarList⚠Non-
objfw - class_copyMethodList⚠Non-
objfw - class_copyPropertyList⚠Non-
objfw - class_copyProtocolList⚠Non-
objfw - class_createInstance⚠Non-
objfw - class_getClassMethod⚠Non-
objfw - class_getClassVariable⚠Non-
objfw - class_getImageName⚠
apple - class_getInstanceMethod⚠Non-
objfw - class_getInstanceVariable⚠Non-
objfw - class_getIvarLayout⚠Non-
objfw - class_getMethodImplementation_stret⚠
objfwor non-AArch64 - class_getProperty⚠Non-
objfw - class_getVersion⚠Non-
objfw - class_getWeakIvarLayout⚠
apple - class_replaceProperty⚠Non-
objfw - class_setIvarLayout⚠Non-
objfw - class_setVersion⚠Non-
objfw - class_setWeakIvarLayout⚠
apple - imp_getBlock⚠Non-
objfw - imp_implementationWithBlock⚠Non-
objfw - imp_removeBlock⚠Non-
objfw - ivar_getName⚠Non-
objfw - ivar_getOffset⚠Non-
objfw - ivar_getTypeEncoding⚠Non-
objfw - method_copyArgumentType⚠Non-
objfw - method_copyReturnType⚠Non-
objfw - method_exchangeImplementations⚠Non-
objfw - method_getArgumentType⚠Non-
objfw - method_getDescription⚠
apple - method_getImplementation⚠Non-
objfw - method_getName⚠Non-
objfw - method_getNumberOfArguments⚠Non-
objfw - method_getReturnType⚠Non-
objfw - method_getTypeEncoding⚠Non-
objfw - method_invoke⚠
apple - method_invoke_stret⚠
appleand non-AArch64 - method_setImplementation⚠Non-
objfw - objc_addExceptionHandler⚠
apple_newand macOS - objc_allocateProtocol⚠Non-
objfw - objc_autoreleasePoolPop⚠Non-
objfw - objc_autoreleasePoolPush⚠Non-
objfw - objc_begin_catch⚠
gnusteporapple_new - objc_copyImageNames⚠
apple - objc_copyProtocolList⚠Non-
objfw - objc_disposeClassPair⚠Non-
objfw - objc_duplicateClass⚠
apple - objc_end_catch⚠
gnusteporapple_new - objc_enumerationMutation⚠
appleorobjfw - objc_exception_rethrow⚠
apple_new - See
objc-exception.h. - objc_exception_try_enter⚠
apple_old - objc_exception_try_exit⚠
apple_old - objc_getAssociatedObject⚠Non-
objfw - objc_getMetaClass⚠Non-
objfw - objc_getProtocol⚠Non-
objfw - objc_msgSend⚠Non-
objfw - objc_msgSendSuper⚠
apple - objc_msgSendSuper_stret⚠
appleand non-AArch64 - objc_msgSend_fp2ret⚠
appleand x86-64 - objc_msgSend_fpret⚠Non-
objfwand (x86-64 or x86) - objc_msgSend_stret⚠Non-
objfwand non-AArch64 - objc_msg_lookup⚠
gnusteporobjfw - objc_msg_lookup_stret⚠
objfw - objc_msg_lookup_super⚠
gnusteporobjfw - objc_registerProtocol⚠Non-
objfw - objc_removeAssociatedObjects⚠Non-
objfw - objc_removeExceptionHandler⚠
apple_newand macOS - objc_setAssociatedObject⚠Non-
objfw - objc_setEnumerationMutationHandler⚠
appleorobjfw - objc_setExceptionMatcher⚠
apple_new - objc_setExceptionPreprocessor⚠
apple_new - objc_setForwardHandler⚠
appleorobjfw - objc_setUncaughtExceptionHandler⚠
apple_neworobjfw - object_getIndexedIvars⚠Non-
objfw - object_getIvar⚠Non-
objfw - object_setIvar⚠Non-
objfw - property_copyAttributeList⚠Non-
objfw - property_copyAttributeValue⚠Non-
objfw - property_getAttributes⚠Non-
objfw - property_getName⚠Non-
objfw - protocol_addMethodDescription⚠Non-
objfw - protocol_addProperty⚠Non-
objfw - protocol_addProtocol⚠Non-
objfw - protocol_copyMethodDescriptionList⚠Non-
objfw - protocol_copyPropertyList⚠Non-
objfw - protocol_copyProtocolList⚠Non-
objfw - protocol_getMethodDescription⚠Non-
objfw - protocol_getProperty⚠Non-
objfw - sel_getUid⚠Non-
objfw - sel_isMapped⚠
apple
Type Definitions
- The Objective-C
BOOLtype. - A nullable pointer to the start of a method implementation.
- A signed integer value type.
- Describes an unsigned integer.
- An immutable pointer to a selector.
- A mutable pointer to an object / instance.
- Policies related to associative references.
- objc_exception_handler
apple_newand macOSRemember that this is non-null! - objc_exception_matcher
apple_newRemember that this is non-null! - objc_exception_preprocessor
apple_newRemember that this is non-null! - objc_uncaught_exception_handler
apple_newRemember that this is non-null!