objc-exports   [plain text]


# Functions and variables explicitly exported from ObjC.
# GrP 2002-2-4
# Note that some commonly used functions are *not* listed in the 
# ObjC headers (e.g. objc_flush_caches())
# List.h
.objc_class_name_List
# objc-class.h
_object_setInstanceVariable
_object_getInstanceVariable
_class_createInstance
_class_createInstanceFromZone
_class_setVersion
_class_getVersion
_class_getInstanceVariable
_class_getInstanceMethod
_class_getClassMethod
_class_addMethods
_class_removeMethods
_class_poseAs
_method_getNumberOfArguments
_method_getSizeOfArguments
_method_getArgumentInfo
_class_nextMethodList
# objc-exception.h
_objc_exception_throw
_objc_exception_try_enter
_objc_exception_try_exit
_objc_exception_extract
_objc_exception_match
_objc_exception_get_functions
_objc_exception_set_functions
# objc-sync.h
_objc_sync_enter
_objc_sync_exit
_objc_sync_wait
_objc_sync_notify
_objc_sync_notifyAll
# objc-load.h
_objc_loadModules
_objc_loadModule
_objc_unloadModules
# objc-runtime.h
_objc_getClass
_objc_getMetaClass
_objc_msgSend
# non-nil entry points disabled for now
# _objc_msgSendNonNil
_objc_msgSend_stret
# _objc_msgSendNonNil_stret
_objc_msgSendSuper
_objc_msgSendSuper_stret
_objc_msgSendv
_objc_msgSendv_stret
_objc_getClassList
_objc_getClasses
_objc_lookUpClass
_objc_addClass
_objc_setClassHandler
_objc_setMultithreaded
__alloc
__copy
__realloc
__dealloc
__zoneAlloc
__zoneRealloc
__zoneCopy
__error
# objc.h
_sel_isMapped
_sel_getName
_sel_getUid
_sel_registerName
_object_getClassName
_object_getIndexedIvars
# Object.h
.objc_class_name_Object
_object_dispose
_object_copy
_object_copyFromZone
_object_realloc
_object_reallocFromZone
# Protocol.h
.objc_class_name_Protocol
# error.h
# everything inside is declared but no longer defined?!
# hashtable2.h
_NXCreateHashTableFromZone
_NXCreateHashTable
_NXFreeHashTable
_NXEmptyHashTable
_NXResetHashTable
_NXCompareHashTables
_NXCopyHashTable
_NXCountHashTable
_NXHashMember
_NXHashGet
_NXHashInsert
_NXHashInsertIfAbsent
_NXHashRemove
_NXInitHashState
_NXNextHashState
_NXPtrHash
_NXStrHash
_NXPtrIsEqual
_NXStrIsEqual
_NXNoEffectFree
_NXReallyFree
_NXPtrPrototype
_NXStrPrototype
_NXPtrStructKeyPrototype
_NXStrStructKeyPrototype
_NXUniqueString
_NXUniqueStringWithLength
_NXUniqueStringNoCopy
_NXCopyStringBuffer
_NXCopyStringBufferFromZone
# maptable.h
_NXCreateMapTableFromZone
_NXCreateMapTable
_NXFreeMapTable
_NXResetMapTable
_NXCompareMapTables
_NXCountMapTable
_NXMapMember
_NXMapGet
_NXMapInsert
_NXMapRemove
_NXInitMapState
_NXNextMapState
_NXPtrValueMapPrototype
_NXStrValueMapPrototype
_NXObjectMapPrototype
#
# Functions that aren't in the headers but are used or are useful.
#
# sudo find / -xdev -type f -perm -0111 \! -name "libobjc*dylib" -print -exec nm -u {} \; > /tmp/all-used-symbols
# (repeat with any other disks you want checked, appending to the same file)
# nm /usr/lib/libobjc.dylib | awk '$2 ~ /^[ADST]$/' | colrm 1 11 | sort -u > /tmp/objc-exports
# (note that you need an unstripped, un-nmedited libobjc.dylib)
# grep -f /tmp/objc-exports /tmp/all-used-symbols | sort -u > /tmp/used-objc-symbols
# grep -v -f /tmp/used-objc-symbols /tmp/objc-exports | sort -u > /tmp/unused-objc-symbols
#
__class_printDuplicateCacheEntries
__class_printMethodCaches
__class_printMethodCacheStatistics
__objc_create_zone
__objc_error
__objc_flush_caches
__objc_msgForward
__objc_resolve_categories_for_class
__objc_setClassLoader
__objc_setNilReceiver
__objc_getNilReceiver
__objcInit
_class_lookupMethod
_class_respondsToMethod
_instrumentObjcMessageSends
_objc_getOrigClass
# magic, or garbage?
__dummy 
_do_not_remove_this_dummy_function
# used by debugging tools like heap
__objc_debug_class_hash
# used by Foundation's NSAutoreleaseFreedObjectCheckEnabled
__objc_getFreedObjectClass