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
68 # _objc_msgSendNonNil_stret
70 _objc_msgSendSuper_stret
76 _objc_getRequiredClass
79 _objc_setMultithreaded
94 _object_getIndexedIvars
96 .objc_class_name_Object
101 _object_reallocFromZone
103 .objc_class_name_Protocol
105 # everything inside is declared but no longer defined?!
107 _NXCreateHashTableFromZone
118 _NXHashInsertIfAbsent
130 _NXPtrStructKeyPrototype
131 _NXStrStructKeyPrototype
133 _NXUniqueStringWithLength
134 _NXUniqueStringNoCopy
136 _NXCopyStringBufferFromZone
138 _NXCreateMapTableFromZone
150 _NXPtrValueMapPrototype
151 _NXStrValueMapPrototype
152 _NXObjectMapPrototype
154 # Functions that aren't in the headers but are used or are useful.
156 # sudo find / -xdev -type f -perm -0111 \! -name "libobjc*dylib" -print -exec nm -u {} \; > /tmp/all-used-symbols
157 # (repeat with any other disks you want checked, appending to the same file)
158 # nm /usr/lib/libobjc.dylib | awk '$2 ~ /^[ADST]$/' | colrm 1 11 | sort -u > /tmp/objc-exports
159 # (note that you need an unstripped, un-nmedited libobjc.dylib)
160 # grep -f /tmp/objc-exports /tmp/all-used-symbols | sort -u > /tmp/used-objc-symbols
161 # grep -v -f /tmp/used-objc-symbols /tmp/objc-exports | sort -u > /tmp/unused-objc-symbols
163 __class_printDuplicateCacheEntries
164 __class_printMethodCaches
165 __class_printMethodCacheStatistics
170 __objc_resolve_categories_for_class
171 __objc_setClassLoader
172 __objc_setNilReceiver
173 __objc_getNilReceiver
176 _class_respondsToMethod
177 _instrumentObjcMessageSends
181 _do_not_remove_this_dummy_function
182 # used by debugging tools like heap
183 __objc_debug_class_hash
184 # used by Foundation's NSAutoreleaseFreedObjectCheckEnabled
185 __objc_getFreedObjectClass