1 # Functions and variables explicitly exported from ObjC.
3 # Note that some commonly used functions are *not* listed in the
4 # ObjC headers (e.g. objc_flush_caches())
8 _object_setInstanceVariable
9 _object_getInstanceVariable
11 _class_createInstanceFromZone
14 _class_getInstanceVariable
15 _class_getInstanceMethod
20 _method_getNumberOfArguments
21 _method_getSizeOfArguments
22 _method_getArgumentInfo
24 # objc-auto.h - actually, everything possible for now
26 _objc_collect_generation
29 _objc_collecting_enabled
31 _objc_assign_strongCast
34 _objc_assign_strongCast_generic
35 _objc_assign_global_generic
36 _objc_assign_ivar_generic
37 _objc_assign_strongCast_CF
38 _objc_assign_ivar_address_CF
41 _objc_memmove_collectable
42 _objc_collect_if_needed
45 _objc_exception_try_enter
46 _objc_exception_try_exit
47 _objc_exception_extract
49 _objc_exception_get_functions
50 _objc_exception_set_functions
65 # non-nil entry points disabled for now
69 # _objc_msgSendNonNil_stret
71 _objc_msgSendSuper_stret
78 _objc_getRequiredClass
81 _objc_setMultithreaded
96 _object_getIndexedIvars
98 .objc_class_name_Object
103 _object_reallocFromZone
105 .objc_class_name_Protocol
107 # everything inside is declared but no longer defined?!
109 _NXCreateHashTableFromZone
120 _NXHashInsertIfAbsent
132 _NXPtrStructKeyPrototype
133 _NXStrStructKeyPrototype
135 _NXUniqueStringWithLength
136 _NXUniqueStringNoCopy
138 _NXCopyStringBufferFromZone
140 _NXCreateMapTableFromZone
152 _NXPtrValueMapPrototype
153 _NXStrValueMapPrototype
154 _NXObjectMapPrototype
156 # Functions that aren't in the headers but are used or are useful.
158 # sudo find / -xdev -type f -perm -0111 \! -name "libobjc*dylib" -print -exec nm -u {} \; > /tmp/all-used-symbols
159 # (repeat with any other disks you want checked, appending to the same file)
160 # nm /usr/lib/libobjc.dylib | awk '$2 ~ /^[ADST]$/' | colrm 1 11 | sort -u > /tmp/objc-exports
161 # (note that you need an unstripped, un-nmedited libobjc.dylib)
162 # grep -f /tmp/objc-exports /tmp/all-used-symbols | sort -u > /tmp/used-objc-symbols
163 # grep -v -f /tmp/used-objc-symbols /tmp/objc-exports | sort -u > /tmp/unused-objc-symbols
165 __class_printDuplicateCacheEntries
166 __class_printMethodCaches
167 __class_printMethodCacheStatistics
172 __objc_resolve_categories_for_class
173 __objc_setClassLoader
174 __objc_setNilReceiver
175 __objc_getNilReceiver
178 _class_respondsToMethod
179 _instrumentObjcMessageSends
183 _do_not_remove_this_dummy_function
184 # used by debugging tools like heap
185 __objc_debug_class_hash
186 # used by Foundation's NSAutoreleaseFreedObjectCheckEnabled
187 __objc_getFreedObjectClass