Skip to content

Instantly share code, notes, and snippets.

@mythz
Created January 16, 2015 18:06
Show Gist options
  • Save mythz/c82c770cc17f11bb38df to your computer and use it in GitHub Desktop.
Save mythz/c82c770cc17f11bb38df to your computer and use it in GitHub Desktop.
Undocumented but useful built-in functions for Swift
Can be extracted from `libswiftCore.dylib` with:
cd `xcode-select -p`/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx
nm -a libswiftCore.dylib | grep "T _swift_"
Output:
00000000001a4fc0 T _swift_ClassMirror_count
00000000001a52a0 T _swift_ClassMirror_quickLookObject
00000000001a5000 T _swift_ClassMirror_subscript
00000000001a4a30 T _swift_MagicMirrorData_objcValue
00000000001a4c70 T _swift_MagicMirrorData_objcValueType
00000000001a4a80 T _swift_MagicMirrorData_summary
00000000001a49d0 T _swift_MagicMirrorData_value
00000000001a4a00 T _swift_MagicMirrorData_valueType
00000000001a5280 T _swift_ObjCMirror_count
00000000001a5290 T _swift_ObjCMirror_subscript
00000000001a4e80 T _swift_StructMirror_count
00000000001a4ea0 T _swift_StructMirror_subscript
00000000001a4ca0 T _swift_TupleMirror_count
00000000001a4cc0 T _swift_TupleMirror_subscript
0000000000193eb0 T _swift_allocBox
0000000000193d00 T _swift_allocObject
0000000000193da0 T _swift_allocPOD
0000000000195700 T _swift_allocateGenericClassMetadata
0000000000195810 T _swift_allocateGenericValueMetadata
000000000019ac20 T _swift_assignExistentialWithCopy
000000000017cb40 T _swift_bridgeNonVerbatimFromObjectiveC
000000000017ccb0 T _swift_bridgeNonVerbatimFromObjectiveCConditional
000000000017ca90 T _swift_bridgeNonVerbatimToObjectiveC
0000000000193d40 T _swift_bufferAllocate
0000000000193d50 T _swift_bufferHeaderSize
000000000017bb20 T _swift_conformsToProtocol
00000000001945d0 T _swift_copyPOD
0000000000193fb0 T _swift_deallocBox
0000000000194030 T _swift_deallocObject
0000000000194070 T _swift_deallocPOD
000000000019b090 T _swift_demangleSimpleClass
000000000017a2b0 T _swift_dynamicCast
0000000000179c50 T _swift_dynamicCastClass
0000000000179ca0 T _swift_dynamicCastClassUnconditional
00000000001a3a90 T _swift_dynamicCastForeignClass
00000000001a3cc0 T _swift_dynamicCastForeignClassMetatype
00000000001a3cd0 T _swift_dynamicCastForeignClassMetatypeUnconditional
00000000001a3aa0 T _swift_dynamicCastForeignClassUnconditional
000000000017b740 T _swift_dynamicCastIndirect
000000000017b920 T _swift_dynamicCastIndirectUnconditional
0000000000179ff0 T _swift_dynamicCastMetatype
000000000017a100 T _swift_dynamicCastMetatypeUnconditional
00000000001a3a00 T _swift_dynamicCastObjCClass
00000000001a3c50 T _swift_dynamicCastObjCClassMetatype
00000000001a3c80 T _swift_dynamicCastObjCClassMetatypeUnconditional
00000000001a3a40 T _swift_dynamicCastObjCClassUnconditional
00000000001a3ba0 T _swift_dynamicCastObjCProtocolConditional
00000000001a3b30 T _swift_dynamicCastObjCProtocolUnconditional
0000000000179df0 T _swift_dynamicCastUnknownClass
0000000000179ef0 T _swift_dynamicCastUnknownClassUnconditional
0000000000194260 T _swift_fixLifetime
00000000001a2360 T _swift_float32ToString
00000000001a2430 T _swift_float64ToString
00000000001a2500 T _swift_float80ToString
00000000001970f0 T _swift_getBlockTypeMetadata
000000000017cb00 T _swift_getBridgedNonVerbatimObjectiveCType
0000000000179d00 T _swift_getDynamicType
00000000001a4640 T _swift_getEnumCaseSinglePayload
00000000001998d0 T _swift_getExistentialMetatypeMetadata
000000000019a2a0 T _swift_getExistentialTypeMetadata
000000000019ad90 T _swift_getForeignTypeMetadata
0000000000196690 T _swift_getFunctionTypeMetadata
00000000001a3ce0 T _swift_getGenericClassObjCName
0000000000195890 T _swift_getGenericMetadata
0000000000195c50 T _swift_getGenericMetadata1
0000000000195c70 T _swift_getGenericMetadata2
0000000000195c90 T _swift_getGenericMetadata3
0000000000195cc0 T _swift_getGenericMetadata4
00000000001a3c30 T _swift_getInitializedObjCClass
0000000000198f70 T _swift_getMetatypeMetadata
0000000000195d40 T _swift_getObjCClassMetadata
00000000001a3ab0 T _swift_getObjectType
00000000000c6a00 T _swift_getSummary
00000000001983b0 T _swift_getTupleTypeMetadata
0000000000198be0 T _swift_getTupleTypeMetadata2
0000000000198c10 T _swift_getTupleTypeMetadata3
0000000000198da0 T _swift_initClassMetadata_UniversalStrategy
00000000001a4550 T _swift_initEnumValueWitnessTableSinglePayload
0000000000198c40 T _swift_initStructMetadata_UniversalStrategy
00000000001a3c10 T _swift_instantiateObjCClass
00000000001a20e0 T _swift_int64ToString
000000000017ce10 T _swift_isBridgedNonVerbatimToObjectiveC
000000000017ce50 T _swift_isClassOrObjCExistential
00000000001a3af0 T _swift_objcRespondsToSelector
00000000001a48b0 T _swift_once
00000000001a56e0 T _swift_reflectAny
00000000001940f0 T _swift_release
00000000001a5f70 T _swift_reportFatalError
00000000001a5e50 T _swift_reportFatalErrorInFile
00000000001a6160 T _swift_reportUnimplementedInitializer
00000000001a6060 T _swift_reportUnimplementedInitializerInFile
00000000001940c0 T _swift_retain
0000000000194140 T _swift_retainCount
00000000001941d0 T _swift_retainUnowned
00000000001940b0 T _swift_retain_noresult
00000000001a5ce0 T _swift_slowAlloc
00000000001a5d00 T _swift_slowDealloc
00000000001a43c0 T _swift_stdlib_NSObject_isEqual
00000000001a4490 T _swift_stdlib_NSStringHasPrefixNFD
00000000001a44f0 T _swift_stdlib_NSStringHasSuffixNFD
00000000001a4450 T _swift_stdlib_NSStringNFDHashValue
00000000001a2610 T _swift_stdlib_atomicCompareExchangeStrongPtr
00000000001a2630 T _swift_stdlib_atomicCompareExchangeStrongUInt32
00000000001a2650 T _swift_stdlib_atomicCompareExchangeStrongUInt64
00000000001a26c0 T _swift_stdlib_atomicFetchAddUInt32
00000000001a26d0 T _swift_stdlib_atomicFetchAddUInt64
00000000001a26b0 T _swift_stdlib_atomicLoadPtr
00000000001a2690 T _swift_stdlib_atomicLoadUInt32
00000000001a26a0 T _swift_stdlib_atomicLoadUInt64
00000000001a2670 T _swift_stdlib_atomicStoreUInt32
00000000001a2680 T _swift_stdlib_atomicStoreUInt64
00000000001a4410 T _swift_stdlib_compareNSStringDeterministicUnicodeCollation
000000000017c520 T _swift_stdlib_conformsToProtocol
00000000001a5a80 T _swift_stdlib_demangleName
000000000017c8a0 T _swift_stdlib_dynamicCastToExistential1
000000000017c6b0 T _swift_stdlib_dynamicCastToExistential1Unconditional
00000000001a5910 T _swift_stdlib_getTypeName
00000000001a4760 T _swift_storeEnumTagSinglePayload
00000000000f7a70 T _swift_stringFromUTF8InRawMemory
0000000000194190 T _swift_tryRetain
00000000001a2220 T _swift_uint64ToString
00000000001a2d20 T _swift_unknownRelease
00000000001a2cd0 T _swift_unknownRetain
00000000001a2d60 T _swift_unknownRetainUnowned
00000000001a35e0 T _swift_unknownWeakAssign
00000000001a38a0 T _swift_unknownWeakCopyAssign
00000000001a3800 T _swift_unknownWeakCopyInit
00000000001a3700 T _swift_unknownWeakDestroy
00000000001a35a0 T _swift_unknownWeakInit
00000000001a3740 T _swift_unknownWeakLoadStrong
00000000001a3330 T _swift_unknownWeakRelease
00000000001a2ef0 T _swift_unknownWeakRetain
00000000001a3950 T _swift_unknownWeakTakeAssign
00000000001a3850 T _swift_unknownWeakTakeInit
00000000001a3790 T _swift_unknownWeakTakeStrong
00000000001a4de0 T _swift_unsafeReflectAny
0000000000194290 T _swift_weakAssign
00000000001944a0 T _swift_weakCopyAssign
0000000000194400 T _swift_weakCopyInit
00000000001943c0 T _swift_weakDestroy
0000000000194270 T _swift_weakInit
00000000001942d0 T _swift_weakLoadStrong
0000000000194160 T _swift_weakRelease
0000000000194150 T _swift_weakRetain
0000000000194530 T _swift_weakTakeAssign
0000000000194460 T _swift_weakTakeInit
0000000000194330 T _swift_weakTakeStrong
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment