C YES true
C NO false
C NULL null

: applicationDidFinishLaunching: v12@0:4@8

T id @

T short s
T int i
T long l
T longlong q

T byte C
T ushort S
T uint I
T ulong L
T ulonglong Q

T char c
T boolean B
T float f
T double d

T Boolean B

T int8_t {char}
T uint8_t {byte}
T int16_t {short}
T uint16_t {ushort}
T int32_t {int}
T uint32_t {uint}
T int64_t {longlong}
T uint64_6 {ulonglong}

T SInt8 {int8_t}
T UInt8 {uint8_t}
T SInt16 {int16_t}
T UInt16 {uint16_t}
T SInt32 {int32_t}
T UInt32 {uint32_t}
T SInt64 {int64_t}
T UInt64 {uint64_t}

S CGPoint "x"f"y"f
S CGRect "origin"{CGPoint}"size"{CGSize}
S CGSize "width"f"height"f

l c

S nlist_64 "_un"(?="n_strx"I)"n_type"C"n_sect"C"n_desc"S"n_value"Q

F malloc ^vL
F free v^v

l objc

F class_addIvar B#*LC*
F class_addMethod B#:^?*
F class_addProtocol B#@
F class_conformsToProtocol B#@
F class_copyIvarList ^^{objc_ivar=}#^I
F class_copyMethodList ^^{objc_method=}#^I
F class_copyPropertyList ^^{objc_property=}#^I
F class_copyProtocolList ^@#^I
F class_createInstance @#L
F class_getClassMethod ^{objc_method=}#:
F class_getClassVariable ^{objc_ivar=}#*
F class_getInstanceMethod ^{objc_method=}#:
F class_getInstanceSize L#
F class_getInstanceVariable ^{objc_ivar=}#*
F class_getIvarLayout *#
F class_getMethodImplementation ^?#:
F class_getMethodImplementation_stret ^?#:
F class_getName *#
F class_getProperty ^{objc_property=}#*
F class_getSuperclass ##
F class_getVersion i#
F class_getWeakIvarLayout *#
F class_isMetaClass B#
F class_replaceMethod ^?#:^?*
F class_respondsToSelector B#:
F class_setIvarLayout v#*
F class_setSuperclass ###
F class_setVersion v#i
F class_setWeakIvarLayout v#*

F ivar_getName *^{objc_ivar=}
F ivar_getOffset i^{objc_ivar=}
F ivar_getTypeEncoding *^{objc_ivar=}

F method_copyArgumentType ^c^{objc_method=}I
F method_copyReturnType ^c^{objc_method=}
F method_exchangeImplementations v^{objc_method=}^{objc_method=}
F method_getArgumentType v^{objc_method=}I^cL
F method_getImplementation ^?^{objc_method=}
F method_getName :^{objc_method=}
F method_getNumberOfArguments I^{objc_method=}
F method_getReturnType v^{objc_method=}^cL
F method_getTypeEncoding *^{objc_method=}
F method_setImplementation ^?^{objc_method=}^?

# this should return # or ^v ?
F objc_allocateClassPair ##*L
F objc_copyProtocolList ^@^I
F objc_duplicateClass ##*L
F objc_getClass #*
F objc_getClassList i^#i
F objc_getFutureClass #*
F objc_getMetaClass @*
F objc_getProtocol @*
F objc_getRequiredClass @*
F objc_lookUpClass @*
F objc_registerClassPair v#
F objc_setFutureClass v#*

F object_copy @@L
F object_dispose @@
F object_getClass #@
F object_getClassName *@
F object_getIndexedIvars ^v@
F object_getInstanceVariable ^{objc_ivar=}@*^^v
F object_getIvar @@^{objc_ivar=}
F object_setClass #@#
F object_setInstanceVariable ^{objc_ivar=}@*^v
F object_setIvar v@^{objc_ivar=}@

F property_getAttributes *^{objc_property=}
F property_getName *^{objc_property=}

F protocol_conformsToProtocol B@@
F protocol_copyMethodDescriptionList ^{objc_method_description=:*}@BB^I
F protocol_copyPropertyList ^^{objc_property=}@^I
F protocol_copyProtocolList ^@@^I
F protocol_getMethodDescription {objc_method_description=:*}@:BB
F protocol_getName *@
F protocol_getProperty ^{objc_property=}@*BB
F protocol_isEqual B@@

F sel_getName *:
F sel_getUid :*
F sel_isEqual B::
F sel_registerName :*

f UIKit

C UIBarStyleDefault 0
C UIBarStyleBlack 1
C UIBarStyleBlackOpaque 2
C UIBarStyleBlackTranslucent 3
T UIBarStyle i

C UIDataDetectorTypePhoneNumber (1<<0)
C UIDataDetectorTypeLink (1<<1)
C UIDataDetectorTypeNone 0
C UIDataDetectorTypeAll -1
T UIDataDetectorTypes {NSUInteger}

S UIEdgeInsets "top"{CGFloat}"left"{CGFloat}"bottom"{CGFloat}"right"{CGFloat}

# UINavigationBar

# UINavigationController

V UINavigationControllerHideShowBarDuration f

# UINavigationControllerDelegate

: navigationController:willShowViewController:animated: v20@0:4@8@12B16
: navigationController:didShowViewController:animated: v20@0:4@8@12B16

# UIScrollView

C UIScrollViewIndicatorStyleDefault 0
C UIScrollViewIndicatorStyleBlack 1
C UIScrollViewIndicatorStyleWhite 2

V UIScrollViewDecelerationRateNormal f
V UIScrollViewDecelerationRateFast f

# UIScrollViewDelegate

: scrollViewDidScroll: v12@0:4@8
: scrollViewWillBeginDragging: v12@0:4@8
: scrollViewDidEndDragging:willDecelerate: v16@0:4@8B12
: scrollViewShouldScrollToTop: B12@0:4@8
: scrollViewDidScrollToTop: v12@0:4@8
: scrollViewWillBeginDecelerating: v12@0:4@8
: scrollViewDidEndDecelerating: v12@0:4@8

: viewForZoomingInScrollView: @12@0:4@8
: scrollViewDidEndZooming:withView:atScale: v20@0:4@8@12f16

: scrollViewDidEndScrollingAnimation: v12@0:4@8

# UITabBar

# UITabBarDelegate

: tabBar:willBeginCustomizingItems: v16@0:4@8@12
: tabBar:didBeginCustomizingItems: v16@0:4@8@12
: tabBar:willBeginCustomizingItems:changed: v20@0:4@8@12B16
: tabBar:didBeginCustomizingItems:changed: v20@0:4@8@12B16
: tabBar:didSelectItem: v16@0:4@8@12

# UITableView

C UITableViewStylePlain 0
C UITableViewStyleGrouped 1

C UITableViewScrollPositionNone 0
C UITableViewScrollPositionTop 1
C UITableViewScrollPositionMiddle 2
C UITableViewScrollPositionBottom 3

C UITableViewRowAnimationFade 0
C UITableViewRowAnimationRight 1
C UITableViewRowAnimationLeft 2
C UITableViewRowAnimationTop 3
C UITableViewRowAnimationBottom 4
C UITableViewRowAnimationNone 5

V UITableViewIndexSearch @

# UITableViewCell

C UITableViewCellStyleDefault 0
C UITableViewCellStyleValue1 1
C UITableViewCellStyleValue2 2
C UITableViewCellStyleSubtitle 3

C UITableViewCellStateDefaultMask 0
C UITableViewCellStateEditingMask (1<<0)
C UITableViewCellStateShowingDeleteConfirmationMask (1<<1)

C UITableViewCellSelectionStyleNone 0
C UITableViewCellSelectionStyleBlue 1
C UITableViewCellSelectionStyleGray 2

C UITableViewCellEditingStyleNone 0
C UITableViewCellEditingStyleDelete 1
C UITableViewCellEditingStyleInsert 2

C UITableViewCellAccessoryNone 0
C UITableViewCellAccessoryDisclosureIndicator 1
C UITableViewCellAccessoryDetailDisclosureButton 2
C UITableViewCellAccessoryCheckmark 3

C UITableViewCellSeparatorStyleNone 0
C UITableViewCellSeparatorStyleSingleLine 1

# UITableViewController

# UITableViewDataSource

: tableView:numberOfRowsInSection: i16@0:4@8i12
: numberOfSectionsInTableView: i12@0:4@8
: tableView:cellForRowAtIndexPath: @16@0:4@8@12
: sectionIndexTitlesForTableView: @12@0:4@8
: tableView:sectionForSectionIndexTitle:atIndex: i20@0:4@8@12i16
: tableView:titleForHeaderInSection: @16@0:4@8i12
: tableView:titleForFooterInSection: @16@0:4@8i12

: tableView:commitEditingStyle:forRowAtIndexPath: v20@0:4@8i12@16
: tableView:canEditRowAtIndexPath: B16@0:4@8@12

: tableView:canMoveRowAtIndexPath: B16@0:4@8@12
: tableView:moveRowAtIndexPath:toIndexPath: v20@0:4@8@12@16

# UIToolbar

# UIView

C UIViewAnimationCurveEaseInOut 0
C UIViewAnimationCurveEaseIn 1
C UIViewAnimationCurveEaseOut 2
C UIViewAnimationCurveLinear 3

C UIViewContentModeScaleToFill 0
C UIViewContentModeScaleAspectFit 1
C UIViewContentModeScaleAspectFill 2
C UIViewContentModeRedraw 3
C UIViewContentModeCenter 4
C UIViewContentModeTop 5
C UIViewContentModeBottom 6
C UIViewContentModeLeft 7
C UIViewContentModeRight 8
C UIViewContentModeTopLeft 9
C UIViewContentModeTopRight 10
C UIViewContentModeBottomLeft 11
C UIViewContentModeBottomRight 12

C UIViewAutoresizingNone 0
C UIViewAutoresizingFlexibleLeftMargin (1<<0)
C UIViewAutoresizingFlexibleWidth (1<<1)
C UIViewAutoresizingFlexibleRightMargin (1<<2)
C UIViewAutoresizingFlexibleTopMargin (1<<3)
C UIViewAutoresizingFlexibleHeight (1<<4)
C UIViewAutoresizingFlexibleBottomMargin (1<<5)

C UIViewAnimationTransitionNone 0
C UIViewAnimationTransitionFlipFromLeft 1
C UIViewAnimationTransitionFlipFromRight 2
C UIViewAnimationTransitionCurlUp 3
C UIViewAnimationTransitionCurlDown 4

# UIViewController

C UIModalTransitionStyleCoverVertical 0
C UIModalTransitionStyleFlipHorizontal 1
C UIModalTransitionStyleCrossDissolve 2

# UIWebView

C UIWebViewNavigationTypeLinkClicked 0
C UIWebViewNavigationTypeFormSubmitted 1
C UIWebViewNavigationTypeBackForward 2
C UIWebViewNavigationTypeReload 3
C UIWebViewNavigationTypeFormResubmitted 4
C UIWebViewNavigationTypeOther 5

# UIWebViewDelegate

: webView:shouldStartLoadWithRequest:navigationType: B20@0:4@8@12I16
: webViewDidStartLoad: v12@0:4@8
: webViewDidFinishLoad: v12@0:4@8
: webView:didFailLoadWithError: v16@0:4@8@12

# UIWindow

V UIWindowLevelNormal f
V UIWindowLevelAlert f
V UIWindowLevelStatusBar f

V UIKeyboardCenterBeginUserInfoKey @
V UIKeyboardCenterEndUserInfoKey @
V UIKeyboardBoundsUserInfoKey @
V UIKeyboardAnimationCurveUserInfoKey @
V UIKeyboardAnimationDurationUserInfoKey @

# Functions

F UIApplicationMain ii^^c@@

F UIImageJPEGRepresentation @@
F UIImagePNGRepresentation @@
F UIImageWriteToSavedPhotosAlbum v@@:^v

F UISaveVideoAtPathToSavedPhotosAlbum v@@:^v
F UIVideoAtPathIsCompatibleWithSavedPhotosAlbum B@

F UIGraphicsGetCurrentContext @
F UIGraphicsPushContext v@
F UIGraphicsPopContext v
F UIGraphicsBeginImageContext v{CGSize}
F UIGraphicsGetImageFromCurrentImageContext @
F UIGraphicsEndImageContext v
F UIRectClip v{CGRect}
F UIRectFill v{CGRect}
F UIRectFillUsingBlendMode v{CGRect}{CGBlendMode}
F UIRectFrame v{CGRect}
F UIRectFrameUsingBlendMode v{CGRect}{CGBlendMode}

F CGPointFromString {CGPoint}@
F CGRectFromString  {CGRect}@
F CGSizeFromString {CGSize}@
F CGAffineTransformFromString {CGAffineTransform}@
F UIEdgeInsetsFromString {UIEdgeInsets=ffff}@
F NSStringFromCGPoint @{CGPoint}
F NSStringFromCGRect @{CGRect}
F NSStringFromCGSize @{CGSize}
F NSStringFromCGAffineTransform @{CGAffineTransform}
F NSStringFromUIEdgeInsets @{UIEdgeInsets=ffff}

F UIEdgeInsetsMake {UIEdgeInsets=ffff}ffff
F UIEdgeInsetsEqualToEdgeInsets B{UIEdgeInsets=ffff}{UIEdgeInsets=ffff}
F UIEdgeInsetsInsetRect {CGRect}{CGRect}{UIEdgeInsets=ffff}

# XXX: UIInterfaceOrientationIsPortrait
# XXX: UIInterfaceOrientationIsLandscape

# XXX: UIDeviceOrientationIsValidInterfaceOrientation
# XXX: UIDeviceOrientationIsPortrait
# XXX: UIDeviceOrientationIsLandscape

F UIAccessibilityPostNotification vI@

# Miscellaneous

F UIGetScreenImage @

V UIAbbreviatedMonthDayFormat @
V UIAbbreviatedWeekdayDateFormat @
V UIAbbreviatedWeekdayFormat @
V UIAbbreviatedWeekdayMonthDayFormat @
V UIAbbreviatedWeekdayMonthDayMinutelessFormat @
V UIAbbreviatedWeekdayMonthDayTimeFormat @
V UIDatePickerDayFormat @
V UIDatePickerMonthFormat @
V UIDatePickerYearFormat @
V UIHourFormat @
V UIMinutelessTimeFormat @
V UIMonthYearFormat @
V UINoAMPMTimeFormat @
V UIShortMonthDayFormat @
V UIWeekdayAbbreviatedDateFormat @
V UIWeekdayAbbreviatedNoYearDateFormat @
V UIWeekdayFormat @
V UIWeekdayNoYearDateFormat @

F UIDateFormatStringForFormatType @@

F UIApplicationUseLegacyEvents vB

F UIKeyboardDisableAutomaticAppearance v
F UIKeyboardEnableAutomaticAppearance v
F UIKeyboardInputModeUsesKBStar B@

F _UIImageWithName @@

F UIFormattedPhoneNumberFromString @@
F UIUnformattedPhoneNumberFromString @@

V UIApp @

V kUIButtonBarButtonAction @
V kUIButtonBarButtonInfo @
V kUIButtonBarButtonInfoOffset @
V kUIButtonBarButtonSelectedInfo @
V kUIButtonBarButtonSizeToFit @
V kUIButtonBarButtonStyle @
V kUIButtonBarButtonTag @
V kUIButtonBarButtonTarget @
V kUIButtonBarButtonTitle @
V kUIButtonBarButtonTitleVerticalHeight @
V kUIButtonBarButtonTitleWidth @
V kUIButtonBarButtonType @

V UIKeyboardRequiresInternationalKey @

V UIKeyboardCandidateCorrectionDidChangeNotification @
V UIKeyboardCurrentInputModeDidChangeNotification @
V UIKeyboardDefaultsDidChangeNotification @
V UIKeyboardDidHideNotification @
V UIKeyboardDidShowNotification @
V UIKeyboardEmptyDelegateNotification @
V UIKeyboardWillHideNotification @
V UIKeyboardWillShowNotification @

V UIWebViewDidReceiveMessageNotification @
V UIWebViewDidClearMessagesNotification @
V UIWebViewGrowsAndShrinksToFitHeight f
V UIWebViewGrowsAndShrinksToFitWidth f
V UIWebViewScalesToFitScale f

f AddressBook

# Private

F CPPhoneNumberCopyNetworkCountryCode @
F ABCGetSharedAddressBook @
F ABCFindPersonMatchingPhoneNumberWithCountry @@@@^i^i
F ABCRecordCopyCompositeName @@
F ABCFindPersonMatchingPhoneNumber @@@^i^i
F ABCCopyLocalizedPropertyOrLabel @i

# Public

F ABAddressBookAddRecord B@@^@
F ABAddressBookCopyArrayOfAllGroups @@
F ABAddressBookCopyArrayOfAllPeople @@
F ABAddressBookCopyLocalizedLabel @@
F ABAddressBookCreate @
F ABAddressBookGetGroupCount l@
F ABAddressBookGetPersonCount l@
F ABAddressBookHasUnsavedChanges B@
F ABAddressBookRegisterExternalChangeCallback v@^?^v
F ABAddressBookRemoveRecord B@@^@
F ABAddressBookRevert v@
F ABAddressBookSave B@^@
F ABAddressBookUnregisterExternalChangeCallback v@^?^v

V ABAddressBookErrorDomain @
C kABOperationNotPermittedByStoreError 0

F ABMultiValueCopyArrayOfAllValues @@
F ABMultiValueCopyLabelAtIndex @@l
F ABMultiValueCopyValueAtIndex @@l
F ABMultiValueGetCount l@
F ABMultiValueGetFirstIndexOfValue l@@
F ABMultiValueGetIdentifierAtIndex i@l
F ABMultiValueGetIndexForIdentifier l@i
F ABMultiValueGetPropertyType S@

C kABMultiValueInvalidIdentifier -1

F ABMultiValueAddValueAndLabel @@@^i
F ABMultiValueCreateMutable @S
F ABMultiValueCreateMutableCopy @@
F ABMultiValueInsertValueAndLabelAtIndex B@@@l^i
F ABMultiValueRemoveValueAndLabelAtIndex B@l
F ABMultiValueReplaceLabelAtIndex B@@l
F ABMultiValueReplaceValueAtIndex B@@l

F ABRecordCopyCompositeName @@
F ABRecordCopyValue @@i
F ABRecordGetRecordID i@
F ABRecordGetRecordType I@
F ABRecordRemoveValue B@i^@
F ABRecordSetValue B@i@^@

C kABPersonType 0
C kABGroupType 1

# this was (1<<8)
C kABMultiValueMask 0x100

C kABInvalidPropertyType 0x0
C kABStringPropertyType 0x1
C kABIntegerPropertyType 0x2
C kABRealPropertyType 0x3
C kABDateTimePropertyType 0x4
C kABDictionaryPropertyType 0x5
C kABMultiStringPropertyType 0x101
C kABMultiIntegerPropertyType 0x102
C kABMultiRealPropertyType 0x103
C kABMultiDateTimePropertyType 0x104
C kABMultiDictionaryPropertyType 0x105

C kABRecordInvalidID -1
C kABPropertyInvalidID -1

F ABAddressBookGetGroupWithRecordID @@i
F ABGroupAddMember B@@^@
F ABGroupCopyArrayOfAllMembers @@
F ABGroupCopyArrayOfAllMembersWithSortOrdering @@I
F ABGroupCreate @
F ABGroupRemoveMember B@@^@

V kABGroupNameProperty i

F ABAddressBookCopyPeopleWithName @@@
F ABAddressBookGetPersonWithRecordID @@i
F ABPersonComparePeopleByName i@@I
F ABPersonCopyImageData @@
F ABPersonCopyLocalizedPropertyName @i
F ABPersonCreate @
F ABPersonGetCompositeNameFormat I
F ABPersonGetSortOrdering I
F ABPersonGetTypeOfProperty SI
F ABPersonHasImageData B@
F ABPersonRemoveImageData B@^@
F ABPersonSetImageData B@@^@

C kABPersonSortByFirstName 0
C kABPersonSortByLastName 1

C kABPersonCompositeNameFormatFirstNameFirst 0
C kABPersonCompositeNameFormatLastNameFirst 1

V kABPersonFirstNameProperty i
V kABPersonLastNameProperty i
V kABPersonMiddleNameProperty i
V kABPersonPrefixProperty i
V kABPersonSuffixProperty i
V kABPersonNicknameProperty i
V kABPersonFirstNamePhoneticProperty i
V kABPersonLastNamePhoneticProperty i
V kABPersonMiddleNamePhoneticProperty i
V kABPersonOrganizationProperty i
V kABPersonJobTitleProperty i
V kABPersonDepartmentProperty i
V kABPersonEmailProperty i
V kABPersonBirthdayProperty i
V kABPersonNoteProperty i
V kABPersonCreationDateProperty i
V kABPersonModificationDateProperty i

V kABPersonAddressProperty i
V kABPersonAddressStreetKey @
V kABPersonAddressCityKey @
V kABPersonAddressStateKey @
V kABPersonAddressZIPKey @
V kABPersonAddressCountryKey @
V kABPersonAddressCountryCodeKey @

V kABPersonDateProperty i
V kABPersonAnniversaryLabel @

V kABPersonKindProperty i
V kABPersonKindPerson @
V kABPersonKindOrganization @

V kABPersonPhoneProperty i
V kABPersonPhoneMobileLabel @
V kABPersonPhoneIPhoneLabel @
V kABPersonPhoneMainLabel @
V kABPersonPhoneHomeFAXLabel @
V kABPersonPhoneWorkFAXLabel @
V kABPersonPhonePagerLabel @

V kABPersonInstantMessageProperty i
V kABPersonInstantMessageServiceKey @
V kABPersonInstantMessageServiceYahoo @
V kABPersonInstantMessageServiceJabber @
V kABPersonInstantMessageServiceMSN @
V kABPersonInstantMessageServiceICQ @
V kABPersonInstantMessageServiceAIM @
V kABPersonInstantMessageUsernameKey @

V kABPersonURLProperty i
V kABPersonHomePageLabel @

V kABPersonRelatedNamesProperty i
V kABPersonMotherLabel @
V kABPersonFatherLabel @
V kABPersonParentLabel @
V kABPersonSisterLabel @
V kABPersonBrotherLabel @
V kABPersonChildLabel @
V kABPersonFriendLabel @
V kABPersonSpouseLabel @
V kABPersonPartnerLabel @
V kABPersonManagerLabel @
V kABPersonAssistantLabel @

V kABWorkLabel @
V kABHomeLabel @
V kABOtherLabel @

f Calendar

F CalDatabaseCopyEventOccurrencesInDateRange {CFArrayRef}^{CalDatabase}^{CalFilter}{CFGregorianDate}{CFGregorianDate}{CFTimeZoneRef}
F CalFilterCreateWithDatabase ^{CalFilter}^{CalDatabase}

F CalEventOccurrenceGetEvent @@
F CalEventCopySummary @@
F CalEventIsAllDay B@
F CalEventOccurrenceGetDate I@

f CoreAnimation

S CATransform3D "m11"{CGFloat}"m12"{CGFloat}"m13"{CGFloat}"m14"{CGFloat}"m21"{CGFloat}"m22"{CGFloat}"m23"{CGFloat}"m24"{CGFloat}"m31"{CGFloat}"m32"{CGFloat}"m33"{CGFloat}"m34"{CGFloat}"m41"{CGFloat}"m42"{CGFloat}"m43"{CGFloat}"m44"{CGFloat}

F CACurrentMediaTime {CFTimeInterval}

F CATransform3DIsIdentity B{CATransform3D}
F CATransform3DEqualToTransform B{CATransform3D}{CATransform3D}
F CATransform3DMakeTranslation {CATransform3D}{CGFloat}{CGFloat}{CGFloat}
F CATransform3DMakeScale {CATransform3D}{CGFloat}{CGFloat}{CGFloat}
F CATransform3DMakeRotation {CATransform3D}{CGFloat}{CGFloat}{CGFloat}{CGFloat}
F CATransform3DTranslate {CATransform3D}{CATransform3D}{CGFloat}{CGFloat}{CGFloat}
F CATransform3DScale {CATransform3D}{CATransform3D}{CGFloat}{CGFloat}{CGFloat}
F CATransform3DRotate {CATransform3D}{CATransform3D}{CGFloat}{CGFloat}{CGFloat}{CGFloat}
F CATransform3DConcat {CATransform3D}{CATransform3D}{CATransform3D}
F CATransform3DInvert {CATransform3D}{CATransform3D}
F CATransform3DMakeAffineTransform {CATransform3D}{CGAffineTransform}
F CATransform3DIsAffine B{CATransform3D}
F CATransform3DGetAffineTransform {CGAffineTransform}{CATransform3D}

f CoreData

C NSUndefinedAttributeType 0
C NSInteger16AttributeType 100
C NSInteger32AttributeType 200
C NSInteger64AttributeType 300
C NSDecimalAttributeType 400
C NSDoubleAttributeType 500
C NSFloatAttributeType 600
C NSStringAttributeType 700
C NSBooleanAttributeType 800
C NSDateAttributeType 900
C NSBinaryDataAttributeType 1000
C NSTransformableAttributeType 1800
C NSObjectIDAttributeType 2000

C NSUndefinedEntityMappingType 0x00
C NSCustomEntityMappingType 0x01
C NSAddEntityMappingType 0x02
C NSRemoveEntityMappingType 0x03
C NSCopyEntityMappingType 0x04
C NSTransformEntityMappingType 0x05

V NSMigrationManagerKey @
V NSMigrationSourceObjectKey @
V NSMigrationDestinationObjectKey @
V NSMigrationEntityMappingKey @
V NSMigrationPropertyMappingKey @
V NSMigrationEntityPolicyKey @

C NSManagedObjectResultType 0x00
C NSManagedObjectIDResultType 0x01
C NSDictionaryResultType 0x02

C NSFetchRequestExpressionType 50

C NSSnapshotEventUndoInsertion 1<<1
C NSSnapshotEventUndoDeletion 1<<2
C NSSnapshotEventUndoUpdate 1<<3
C NSSnapshotEventRollback 1<<4
C NSSnapshotEventRefresh 1<<5
C NSSnapshotEventMergePolicy 1<<6

V NSInsertedObjectsKey @
V NSUpdatedObjectsKey @
V NSDeletedObjectsKey @
V NSRefreshedObjectsKey @
V NSInvalidatedObjectsKey @
V NSInvalidatedAllObjectsKey @

V NSErrorMergePolicy @
V NSMergeByPropertyStoreTrumpMergePolicy @
V NSMergeByPropertyObjectTrumpMergePolicy @
V NSOverwriteMergePolicy @
V NSRollbackMergePolicy @

V NSSQLiteStoreType @
V NSBinaryStoreType @
V NSInMemoryStoreType @

V NSStoreTypeKey @
V NSStoreUUIDKey @

V NSAddedPersistentStoresKey @
V NSRemovedPersistentStoresKey @
V NSUUIDChangedPersistentStoresKey @

V NSReadOnlyPersistentStoreOption @
V NSPersistentStoreTimeoutOption @
V NSSQLitePragmasOption @
V NSSQLiteAnalyzeOption @
V NSSQLiteManualVacuumOption @

V NSIgnorePersistentStoreVersioningOption @
V NSMigratePersistentStoresAutomaticallyOption @
V NSInferMappingModelAutomaticallyOption @

V NSStoreModelVersionHashesKey @
V NSStoreModelVersionIdentifiersKey @
V NSPersistentStoreOSCompatibility @

C NSNoActionDeleteRule 0
C NSNullifyDeleteRule 1
C NSCascadeDeleteRule 2
C NSDenyDeleteRule 3

C NSFetchedResultsChangeInsert 1
C NSFetchedResultsChangeDelete 2
C NSFetchedResultsChangeMove 3
C NSFetchedResultsChangeUpdate 4

V NSDetailedErrorsKey @
V NSValidationObjectErrorKey @
V NSValidationKeyErrorKey @
V NSValidationPredicateErrorKey @
V NSValidationValueErrorKey @
V NSAffectedStoresErrorKey @
V NSAffectedObjectsErrorKey @

V NSSQLiteErrorDomain @

C NSManagedObjectValidationError 1550
C NSValidationMultipleErrorsError 1560
C NSValidationMissingMandatoryPropertyError 1570
C NSValidationRelationshipLacksMinimumCountError 1580
C NSValidationRelationshipExceedsMaximumCountError 1590
C NSValidationRelationshipDeniedDeleteError 1600
C NSValidationNumberTooLargeError 1610
C NSValidationNumberTooSmallError 1620
C NSValidationDateTooLateError 1630
C NSValidationDateTooSoonError 1640
C NSValidationInvalidDateError 1650
C NSValidationStringTooLongError 1660
C NSValidationStringTooShortError 1670
C NSValidationStringPatternMatchingError 1680

C NSManagedObjectContextLockingError 132000
C NSPersistentStoreCoordinatorLockingError 132010
C NSManagedObjectReferentialIntegrityError 133000
C NSManagedObjectExternalRelationshipError 133010
C NSManagedObjectMergeError 133020

C NSPersistentStoreInvalidTypeError 134000
C NSPersistentStoreTypeMismatchError 134010
C NSPersistentStoreIncompatibleSchemaError 134020
C NSPersistentStoreSaveError 134030
C NSPersistentStoreIncompleteSaveError 134040
C NSPersistentStoreOperationError 134070
C NSPersistentStoreOpenError 134080
C NSPersistentStoreTimeoutError 134090
C NSPersistentStoreIncompatibleVersionHashError 134100

C NSMigrationError 134110
C NSMigrationCancelledError 134120
C NSMigrationMissingSourceModelError 134130
C NSMigrationMissingMappingModelError 134140
C NSMigrationManagerSourceStoreError 134150
C NSMigrationManagerDestinationStoreError 134160
C NSEntityMigrationPolicyError 134170
C NSInferredMappingModelError 134190
C NSExternalRecordImportError 134200

C NSCoreDataError 134060
C NSSQLiteError 134180

V NSCoreDataVersionNumber d

C NSCoreDataVersionNumber10_4 46.0
C NSCoreDataVersionNumber10_4_3 77.0
C NSCoreDataVersionNumber10_5 185.0
C NSCoreDataVersionNumber10_5_3 186.0

f CoreFoundation

# Base Utilities

F CFRangeMake {CFRange}{CFIndex}{CFIndex}

# Time Utilities

F CFAbsoluteTimeAddGregorianUnits {CFAbsoluteTime}{CFAbsoluteTime}{CFTimeZoneRef}{CFGregorianUnits}
F CFAbsoluteTimeGetCurrent {CFAbsoluteTime}
F CFAbsoluteTimeGetDayOfWeek {SInt32}{CFAbsoluteTime}{CFTimeZoneRef}
F CFAbsoluteTimeGetDayOfYear {SInt32}{CFAbsoluteTime}{CFTimeZoneRef}
F CFAbsoluteTimeGetDifferenceAsGregorianUnits {CFGregorianUnits}{CFAbsoluteTime}{CFAbsoluteTime}{CFTimeZoneRef}{CFOptionFlags}
F CFAbsoluteTimeGetGregorianDate {CFGregorianDate}{CFAbsoluteTime}{CFTimeZoneRef}
F CFAbsoluteTimeGetWeekOfYear {SInt32}{CFAbsoluteTime}{CFTimeZoneRef}
F CFGregorianDateGetAbsoluteTime {CFAbsoluteTime}{CFGregorianDate}{CFTimeZoneRef}
F CFGregorianDateIsValid {Boolean}{CFGregorianDate}{CFOptionFlags}

T CFAbsoluteTime {CFTimeInterval}
S CFGregorianDate "year"{SInt32}"month"{SInt8}"day"{SInt8}"hour"{SInt8}"minute"{SInt8}"second"{double}
S CFGregorianUnits "years"{SInt32}"months"{SInt32}"days"{SInt32}"hours"{SInt32}"minutes"{SInt32}"second"{double}
T CFTimeInterval {double}

C kCFGregorianUnitsYears 1<<0
C kCFGregorianUnitsMonths 1<<1
C kCFGregorianUnitsDays 1<<2
C kCFGregorianUnitsHours 1<<3
C kCFGregorianUnitsMinutes 1<<4
C kCFGregorianUnitsSeconds 1<<5
C kCFGregorianAllUnits 0x00FFFFFF

V kCFAbsoluteTimeIntervalSince1970 {CFTimeInterval}
V kCFAbsoluteTimeIntervalSince1904 {CFTimeInterval}

# CFComparatorFunction

T CFIndex l
T CFOptionFlags {UInt32}
S CFRange "location"{CFIndex}"length"{CFIndex}

E CFComparisonResult
C kCFCompareLessThan -1
C kCFCompareEqualTo 0
C kCFCompareGreaterThan 1
# CFComparisonResult CFComparisonResult

C kCFNotFound -1

V kCFCoreFoundationVersionNumber d

C kCFCoreFoundationVersionNumber10_0 196.40
C kCFCoreFoundationVersionNumber10_0_3 196.50
C kCFCoreFoundationVersionNumber10_1 226.00
C kCFCoreFoundationVersionNumber10_1_1 226.00
C kCFCoreFoundationVersionNumber10_1_2 227.20
C kCFCoreFoundationVersionNumber10_1_3 227.20
C kCFCoreFoundationVersionNumber10_1_4 227.30
C kCFCoreFoundationVersionNumber10_2 263.00
C kCFCoreFoundationVersionNumber10_2_1 263.10
C kCFCoreFoundationVersionNumber10_2_2 263.10
C kCFCoreFoundationVersionNumber10_2_3 263.30
C kCFCoreFoundationVersionNumber10_2_4 263.30
C kCFCoreFoundationVersionNumber10_2_5 263.50
C kCFCoreFoundationVersionNumber10_2_6 263.50
C kCFCoreFoundationVersionNumber10_2_7 263.50
C kCFCoreFoundationVersionNumber10_2_8 263.50
C kCFCoreFoundationVersionNumber10_3 299.00
C kCFCoreFoundationVersionNumber10_3_1 299.00
C kCFCoreFoundationVersionNumber10_3_2 299.00
C kCFCoreFoundationVersionNumber10_3_3 299.30
C kCFCoreFoundationVersionNumber10_3_4 299.31
C kCFCoreFoundationVersionNumber10_3_5 299.31
C kCFCoreFoundationVersionNumber10_3_6 299.32
C kCFCoreFoundationVersionNumber10_3_7 299.33
C kCFCoreFoundationVersionNumber10_3_8 299.33
C kCFCoreFoundationVersionNumber10_3_9 299.35
C kCFCoreFoundationVersionNumber10_4 368.00
C kCFCoreFoundationVersionNumber10_4_1 368.10
C kCFCoreFoundationVersionNumber10_4_2 368.11
C kCFCoreFoundationVersionNumber10_4_3 368.18
C kCFCoreFoundationVersionNumber10_4_4_Intel 368.26
C kCFCoreFoundationVersionNumber10_4_4_PowerPC 368.25
C kCFCoreFoundationVersionNumber10_4_5_Intel 368.26
C kCFCoreFoundationVersionNumber10_4_5_PowerPC 368.25
C kCFCoreFoundationVersionNumber10_4_6_Intel 368.26
C kCFCoreFoundationVersionNumber10_4_6_PowerPC 368.25
C kCFCoreFoundationVersionNumber10_4_7 368.27
C kCFCoreFoundationVersionNumber10_4_8 368.27
C kCFCoreFoundationVersionNumber10_4_9 368.28
C kCFCoreFoundationVersionNumber10_4_10 368.28
C kCFCoreFoundationVersionNumber10_4_11 368.31
C kCFCoreFoundationVersionNumber10_5 476.00
C kCFCoreFoundationVersionNumber10_5_1 476.00
C kCFCoreFoundationVersionNumber10_5_2 476.10
C kCFCoreFoundationVersionNumber10_5_3 476.13
C kCFCoreFoundationVersionNumber10_5_4 476.14
C kCFCoreFoundationVersionNumber10_5_5 476.15
C kCFCoreFoundationVersionNumber10_5_6 476.17

# CFAllocator

F CFAllocatorCreate {CFAllocatorRef}{CFAllocatorRef}{CFAllocatorContext}

F CFAllocatorAllocate ^v{CFAllocatorRef}{CFIndex}{CFOptionFlags}
F CFAllocatorDeallocate v{CFAllocatorRef}^v
F CFAllocatorGetPreferredSizeForSize {CFIndex}{CFAllocatorRef}{CFIndex}{CFOptionFlags}
F CFAllocatorReallocate ^v{CFAllocatorRef}^v{CFIndex}{CFOptionFlags}

F CFAllocatorGetDefault {CFAllocatorRef}
f CFAllocatorSetDefault v{CFAllocatorRef}

F CFAllocatorGetContext v{CFAllocatorRef}^{CFAllocatorContext}

F CFAllocatorGetTypeID {CFTypeID}

# CFAllocatorAllocateCallBack
# CFAllocatorCopyDescriptionCallBack
# CFAllocatorDeallocateCallBack
# CFAllocatorPreferredSizeCallBack
# CFAllocatorReallocateCallBack
# CFAllocatorReleaseCallBack
# CFAllocatorRetainCallBack

S CFAllocatorContext "version"{CFIndex}"info"^v"retain"{CFAllocatorRetainCallBack}"release"{CFAllocatorReleaseCallBack}"copyDescription"{CFAllocatorCopyDescriptionCallBack}"allocate"{CFAllocatorAllocateCallBack}"reallocate"{CFAllocatorReallocateCallBack}"deallocate"{CFAllocatorDeallocateCallBack}"preferredSize"{CFAllocatorPreferredSizeCallBack}
# CFAllocatorContext CFAllocatorContext

T CFAllocatorRef @
# CFAllocatorRef ^r{__CFAllocator}

V kCFAllocatorDefault {CFAllocatorRef}
V kCFAllocatorSystemDefault {CFAllocatorRef}
V kCFAllocatorMalloc {CFAllocatorRef}
V kCFAllocatorMallocZone {CFAllocatorRef}
V kCFAllocatorNull {CFAllocatorRef}
V kCFAllocatorUseContext {CFAllocatorRef}

# CFByteOrderUtils

E __CFByteOrder
C CFByteOrderUnknown 0
C CFByteOrderLittleEndian 1
C CFByteOrderBigEndian 2
T CFByteOrder __CFByteOrder

# CFArray

T CFArrayRef @

# CFData

F CFDataCreate {CFDataRef}{CFAllocatorRef}^r{UInt8}{CFIndex}
F CFDataCreateCopy {CFDataRef}{CFAllocatorRef}{CFDataRef}
F CFDataCreateWithBytesNoCopy {CFDataRef}{CFAllocatorRef}^r{UInt8}{CFIndex}{CFAllocatorRef}

F CFDataGetBytePtr ^r{UInt8}{CFDataRef}
F CFDataGetBytes v{CFDataRef}{CFRange}^{UInt8}
F CFDataGetLength {CFIndex}{CFDataRef}

F CFDataGetTypeID {CFTypeID}

T CFDataRef @
# CFDataRef ^r{__CFData}

# CFDate

F CFDateCompare {CFComparisonResult}{CFDateRef}{CFDateRef}^v
F CFDateCreate {CFDateRef}{CFAllocatorRef}{CFAbsoluteTime}
F CFDateGetAbsoluteTime {CFAbsoluteTime}{CFDateRef}
F CFDateGetTimeIntervalSinceDate {CFTimeInterval}{CFDateRef}{CFDateRef}
F CFDateGetTypeID {CFTypeID}

T CFDateRef @
# CFDateRef ^r{__CFDate}

# CFDateFormatter

F CFDateFormatterCreate {CFDateFormatterRef}{CFAllocatorRef}{CFLocaleRef}{CFDateFormatterStyle}{CFDateFormatterStyle}

F CFDateFormatterSetFormat v{CFDateFormatterRef}{CFStringRef}
F CFDateFormatterSetProperty v{CFDateFormatterRef}{CFStringRef}{CFTypeRef}

F CFDateFormatterCreateDateFromString {CFDateRef}{CFAllocatorRef}{CFDateFormatterRef}{CFStringRef}^{CFRange}
F CFDateFormatterGetAbsoluteTimeFromString {Boolean}{CFDateFormatterRef}{CFStringRef}^{CFRange}^{CFAbsoluteTime}

F CFDateFormatterCreateStringWithAbsoluteTime {CFStringRef}{CFAllocatorRef}{CFDateFormatterRef}{CFAbsoluteTime}
F CFDateFormatterCreateStringWithDate {CFStringRef}{CFAllocatorRef}{CFDateFormatterRef}{CFDateRef}
F CFDateFormatterCreateDateFormatFromTemplate {CFStringRef}{CFAllocatorRef}{CFStringRef}{CFOptionFlags}{CFLocaleRef}

F CFDateFormatterCopyProperty {CFTypeRef}{CFDateFormatterRef}{CFStringRef}
F CFDateFormatterGetDateStyle {CFDateFormatterStyle}{CFDateFormatterRef}
F CFDateFormatterGetFormat {CFStringRef}{CFDateFormatterRef}
F CFDateFormatterGetLocale {CFLocaleRef}{CFDateFormatterRef}
F CFDateFormatterGetTimeStyle {CFDateFormatterStyle}{CFDateFormatterRef}

F CFDateFormatterGetTypeID {CFTypeID}

T CFDateFormatterRef @
# CFDateFormatterRef ^r{__CFDateFormatter}

T CFDateFormatterStyle {CFIndex}

C kCFDateFormatterNoStyle 0
C kCFDateFormatterShortStyle 1
C kCFDateFormatterMediumStyle 2
C kCFDateFormatterLongStyle 3
C kCFDateFormatterFullStyle 4

V kCFDateFormatterIsLenient @
V kCFDateFormatterTimeZone @
V kCFDateFormatterCalendarName @
V kCFDateFormatterDefaultFormat @
   
V kCFDateFormatterTwoDigitStartDate @
V kCFDateFormatterDefaultDate @
V kCFDateFormatterCalendar @
V kCFDateFormatterEraSymbols @
V kCFDateFormatterMonthSymbols @
V kCFDateFormatterShortMonthSymbols @
V kCFDateFormatterWeekdaySymbols @
V kCFDateFormatterShortWeekdaySymbols @
V kCFDateFormatterAMSymbol @
V kCFDateFormatterPMSymbol @
   
V kCFDateFormatterLongEraSymbols @
V kCFDateFormatterVeryShortMonthSymbols @
V kCFDateFormatterStandaloneMonthSymbols @
V kCFDateFormatterShortStandaloneMonthSymbols @
V kCFDateFormatterVeryShortStandaloneMonthSymbols @
V kCFDateFormatterVeryShortWeekdaySymbols @
V kCFDateFormatterStandaloneWeekdaySymbols @
V kCFDateFormatterShortStandaloneWeekdaySymbols @
V kCFDateFormatterVeryShortStandaloneWeekdaySymbols @
V kCFDateFormatterQuarterSymbols @
V kCFDateFormatterShortQuarterSymbols @
V kCFDateFormatterStandaloneQuarterSymbols @
V kCFDateFormatterShortStandaloneQuarterSymbols @
V kCFDateFormatterGregorianStartDate @

V CFGregorianCalendar @

# CFLocale

F CFLocaleCopyCurrent {CFLocaleRef}
F CFLocaleCreate {CFLocaleRef}{CFAllocatorRef}{CFStringRef}
F CFLocaleCreateCopy {CFLocaleRef}{CFAllocatorRef}{CFLocaleRef}
F CFLocaleGetSystem {CFLocaleRef}

F CFLocaleCopyAvailableLocaleIdentifiers {CFArrayRef}

F CFLocaleCopyISOCountryCodes {CFArrayRef}
F CFLocaleCopyISOLanguageCodes {CFArrayRef}
F CFLocaleCopyISOCurrencyCodes {CFArrayRef}
F CFLocaleCopyCommonISOCurrencyCodes {CFArrayRef}

F CFLocaleCopyPreferredLanguages {CFArrayRef}

F CFLocaleCopyDisplayNameForPropertyValue {CFStringRef}{CFLocaleRef}{CFStringRef}{CFStringRef}
F CFLocaleGetValue {CFTypeRef}{CFLocaleRef}{CFStringRef}
F CFLocaleGetIdentifier {CFStringRef}{CFLocaleRef}

F CFLocaleCreateCanonicalLocaleIdentifierFromScriptManagerCodes {CFStringRef}{CFAllocatorRef}{LangCode}{RegionCode}
F CFLocaleCreateCanonicalLanguageIdentifierFromString {CFStringRef}{CFAllocatorRef}{CFStringRef}
F CFLocaleCreateCanonicalLocaleIdentifierFromString {CFStringRef}{CFAllocatorRef}{CFStringRef}
F CFLocaleCreateComponentsFromLocaleIdentifier {CFDictionaryRef}{CFAllocatorRef}{CFStringRef}
F CFLocaleCreateLocaleIdentifierFromComponents {CFStringRef}{CFAllocatorRef}{CFDictionaryRef}

F CFLocaleGetTypeID {CFTypeID}

F CFLocaleCreateLocaleIdentifierFromWindowsLocaleCode {CFStringRef}{CFAllocatorRef}{uint32_t}
F CFLocaleGetLanguageCharacterDirection {CFLocaleLanguageDirection}{CFStringRef}
F CFLocaleGetLanguageLineDirection {CFLocaleLanguageDirection}{CFStringRef}
F CFLocaleGetWindowsLocaleCodeFromLocaleIdentifier {uint32_t}{CFStringRef}

T CFLocaleRef @
# CFLocaleRef ^r{__CFLocale}

C kCFLocaleLanguageDirectionUnknown 0
C kCFLocaleLanguageDirectionLeftToRight 1
C kCFLocaleLanguageDirectionRightToLeft 2
C kCFLocaleLanguageDirectionTopToBottom 3
C kCFLocaleLanguageDirectionBottomToTop 4

T CFLocaleLanguageDirection {CFIndex}

V kCFLocaleMeasurementSystem @
V kCFLocaleDecimalSeparator @
V kCFLocaleGroupingSeparator @
V kCFLocaleCurrencySymbol @
V kCFLocaleCurrencyCode @

V kCFLocaleIdentifier @
V kCFLocaleLanguageCode @
V kCFLocaleCountryCode @
V kCFLocaleScriptCode @
V kCFLocaleVariantCode @
V kCFLocaleExemplarCharacterSet @
V kCFLocaleCalendarIdentifier @
V kCFLocaleCalendar @
V kCFLocaleCollationIdentifier @
V kCFLocaleUsesMetricSystem @

V kCFGregorianCalendar @
V kCFBuddhistCalendar @
V kCFChineseCalendar @
V kCFHebrewCalendar @
V kCFIslamicCalendar @
V kCFIslamicCivilCalendar @
V kCFJapaneseCalendar @
V kCFRepublicOfChinaCalendar @
V kCFPersianCalendar @
V kCFIndianCalendar @
V kCFISO8601Calendar @

V kCFLocaleCurrentLocaleDidChangeNotificatio @

# CFRunLoop

F CFRunLoopGetCurrent {CFRunLoopRef}
F CFRunLoopGetMain {CFRunLoopRef}

F CFRunLoopRun v
F CFRunLoopRunInMode {SInt32}{CFStringRef}{CFTimeInterval}{Boolean}
F CFRunLoopWakeUp v{CFRunLoopRef}
F CFRunLoopStop v{CFRunLoopRef}
F CFRunLoopIsWaiting {Boolean}{CFRunLoopRef}

F CFRunLoopAddSource v{CFRunLoopRef}{CFRunLoopSourceRef}{CFStringRef}
F CFRunLoopContainsSource {Boolean}{CFRunLoopRef}{CFRunLoopSourceRef}{CFStringRef}
F CFRunLoopRemoveSource v{CFRunLoopRef}{CFRunLoopSourceRef}{CFStringRef}

F CFRunLoopAddObserver v{CFRunLoopRef}{CFRunLoopObserverRef}{CFStringRef}
F CFRunLoopContainsObserver {Boolean}{CFRunLoopRef}{CFRunLoopObserverRef}{CFStringRef}
F CFRunLoopRemoveObserver v{CFRunLoopRef}{CFRunLoopObserverRef}{CFStringRef}

F CFRunLoopAddCommonMode v{CFRunLoopRef}{CFStringRef}
F CFRunLoopCopyAllModes {CFArrayRef}{CFRunLoopRef}
F CFRunLoopCopyCurrentMode {CFStringRef}{CFRunLoopRef}

F CFRunLoopAddTimer v{CFRunLoopRef}{CFRunLoopTimerRef}{CFStringRef}
F CFRunLoopGetNextTimerFireDate {CFAbsoluteTime}{CFRunLoopRef}{CFStringRef}
F CFRunLoopRemoveTimer v{CFRunLoopRef}{CFRunLoopTimerRef}{CFStringRef}
F CFRunLoopContainsTimer {Boolean}{CFRunLoopRef}{CFRunLoopTimerRef}{CFStringRef}

# F CFRunLoopPerformBlock

F CFRunLoopGetTypeID {CFTypeID}

T CFRunLoopRef @

C kCFRunLoopRunFinished 1
C kCFRunLoopRunStopped 2
C kCFRunLoopRunTimedOut 3
C kCFRunLoopRunHandledSource 4

V kCFRunLoopCommonModes {CFStringRef}
V kCFRunLoopDefaultMode {CFStringRef}

# CFRunLoopTimer

T CFRunLoopTimerRef @

# CFString

T CFStringRef @

# CFTimeZone

F CFTimeZoneCreateWithName {CFTimeZoneRef}{CFAllocatorRef}{CFStringRef}{Boolean}
F CFTimeZoneCreateWithTimeIntervalFromGMT {CFTimeZoneRef}{CFAllocatorRef}{CFTimeInterval}
F CFTimeZoneCreate {CFTimeZoneRef}{CFAllocatorRef}{CFStringRef}{CFDataRef}

F CFTimeZoneCopyAbbreviationDictionary {CFDictionaryRef}
F CFTimeZoneCopyAbbreviation {CFStringRef}{CFTimeZoneRef}{CFAbsoluteTime}
F CFTimeZoneCopyDefault {CFTimeZoneRef}
F CFTimeZoneCopySystem {CFTimeZoneRef}
F CFTimeZoneSetDefault v{CFTimeZoneRef}
F CFTimeZoneCopyKnownNames {CFArrayRef}
F CFTimeZoneResetSystem v
F CFTimeZoneSetAbbreviationDictionary v{CFDictionaryRef}

F CFTimeZoneGetName {CFStringRef}{CFTimeZoneRef}
F CFTimeZoneCopyLocalizedName {CFStringRef}{CFTimeZoneRef}{CFTimeZoneNameStyle}{CFLocaleRef}
F CFTimeZoneGetSecondsFromGMT {CFTimeInterval}{CFTimeZoneRef}{CFAbsoluteTime}
F CFTimeZoneGetData {CFDataRef}{CFTimeZoneRef}

F CFTimeZoneIsDaylightSavingTime {Boolean}{CFTimeZoneRef}{CFAbsoluteTime}
F CFTimeZoneGetDaylightSavingTimeOffset {CFTimeInterval}{CFTimeZoneRef}{CFAbsoluteTime}
F CFTimeZoneGetNextDaylightSavingTimeTransition {CFAbsoluteTime}{CFTimeZoneRef}{CFAbsoluteTime}

F CFTimeZoneGetTypeID {CFTypeID}

T CFTimeZoneNameStyle {CFIndex}
T CFTimeZoneRef @
# CFTimeZoneRef ^r{__CFTimeZoneRef}

V kCFTimeZoneSystemTimeZoneDidChangeNotification {CFStringRef}

C kCFTimeZoneNameStyleStandard 0
C kCFTimeZoneNameStyleShortStandard 1
C kCFTimeZoneNameStyleDaylightSaving 2
C kCFTimeZoneNameStyleShortDaylightSaving 3

# CFType

F CFGetAllocator {CFAllocatorRef}{CFTypeRef}
F CFGetRetainCount {CFIndex}{CFTypeRef}
F CFMakeCollectable {CFTypeRef}{CFTypeRef}
F CFRelease v{CFTypeRef}
F CFRetain {CFTypeRef}{CFTypeRef}

F CFEqual 

F CFHash {CFHashCode}{CFTypeRef}

F CFGetTypeID {CFTypeID}{CFTypeRef}
F CFShow v{CFTypeRef}

T CFHashCode L
T CFTypeID L

T CFTypeRef @
# CFTypeRef ^rv

# Private

F CFShowStr v@

f CoreGraphics

T CGFloat f

# CGAffineTransform

F CGAffineTransformMake {CGAffineTransform}{CGFloat}{CGFloat}{CGFloat}{CGFloat}{CGFloat}{CGFloat}
F CGAffineTransformMakeRotation {CGAffineTransform}{CGFloat}
F CGAffineTransformMakeScale {CGAffineTransform}{CGFloat}{CGFloat}
F CGAffineTransformMakeTranslation {CGAffineTransform}{CGFloat}{CGFloat}

F CGAffineTransformTranslate {CGAffineTransform}{CGAffineTransform}{CGFloat}{CGFloat}
F CGAffineTransformScale {CGAffineTransform}{CGAffineTransform}{CGFloat}{CGFloat}
F CGAffineTransformRotate {CGAffineTransform}{CGAffineTransform}{CGFloat}
F CGAffineTransformInvert {CGAffineTransform}{CGAffineTransform}
F CGAffineTransformConcat {CGAffineTransform}{CGAffineTransform}{CGAffineTransform}

F CGPointApplyAffineTransform {CGPoint}{CGPoint}{CGAffineTransform}
F CGSizeApplyAffineTransform {CGSize}{CGSize}{CGAffineTransform}
F CGRectApplyAffineTransform {CGRect}{CGRect}{CGAffineTransform}

F CGAffineTransformIsIdentity B{CGAffineTransform}
F CGAffineTransformEqualToTransform B{CGAffineTransform}{CGAffineTransform}

S CGAffineTransform "a"{CGFloat}"b"{CGFloat}"c"{CGFloat}"d"{CGFloat}"tx"{CGFloat}"ty"{CGFloat}

V CGAffineTransformIdentity {CGAffineTransform}

# CGContext

T CGContextRef ^{CGContext}

E CGBlendMode
C kCGBlendModeNormal 0
C kCGBlendModeMultiply 1
C kCGBlendModeScreen 2
C kCGBlendModeOverlay 3
C kCGBlendModeDarken 4
C kCGBlendModeLighten 5
C kCGBlendModeColorDodge 6
C kCGBlendModeColorBurn 7
C kCGBlendModeSoftLight 8
C kCGBlendModeHardLight 9
C kCGBlendModeDifference 10
C kCGBlendModeExclusion 11
C kCGBlendModeHue 12
C kCGBlendModeSaturation 13
C kCGBlendModeColor 14
C kCGBlendModeLuminosity 15
C kCGBlendModeClear 16
C kCGBlendModeCopy 17
C kCGBlendModeSourceIn 18
C kCGBlendModeSourceOut 19
C kCGBlendModeSourceAtop 20
C kCGBlendModeDestinationOver 21
C kCGBlendModeDestinationIn 22
C kCGBlendModeDestinationOut 23
C kCGBlendModeDestinationAtop 24
C kCGBlendModeXOR 25
C kCGBlendModePlusDarker 26
C kCGBlendModePlusLighter 27

E CGInterpolationQuality
C kCGInterpolationDefault 0
C kCGInterpolationNone 1
C kCGInterpolationLow 2
C kCGInterpolationHigh 3

E CGLineCap
C kCGLineCapButt 0
C kCGLineCapRound 1
C kCGLineCapSquare 2

E CGLineJoin
C kCGLineJoinMiter 0
C kCGLineJoinRound 1
C kCGLineJoinBevel 2

E CGTextDrawingMode
C kCGTextFill 0
C kCGTextStroke 1
C kCGTextFillStroke 2
C kCGTextInvisible 3
C kCGTextFillClip 4
C kCGTextStrokeClip 5
C kCGTextFillStrokeClip 6
C kCGTextClip 7

E CGTextEncoding
C kCGEncodingFontSpecific 0
C kCGEncodingMacRoman 1

f CoreLocation

T CLLocationDegrees d

S CLLocationCoordinate2D "latitude"{CLLocationDegrees}"longitude"{CLLocationDegrees}

T CLLocationAccuracy d

V kCLLocationAccuracyBest d
V kCLLocationAccuracyNearestTenMeters d
V kCLLocationAccuracyHundredMeters d
V kCLLocationAccuracyKilometer d
V kCLLocationAccuracyThreeKilometers d

T CLLocationSpeed d
T CLLocationDirection d

V kCLDistanceFilterNone d
V kCLHeadingFilterNone d

C kCLErrorLocationUnknown 0
C kCLErrorDenied 1
C kCLErrorNetwork 2
C kCLErrorHeadingFailure 3

V kCLErrorDomain @

f CoreTelephony

# most of this is garbage

T CTCallRef @

# CTCallAddressBlocked
# CTCallAnswer
# CTCallAnswerEndingActive
# CTCallAnswerEndingAllOthers
# CTCallAnswerEndingHeld
# CTCallAnswerWithSourceIdentifier
F CTCallCopyAddress {CFStringRef}{CFAllocatorRef}{CTCallRef}
# CTCallCopyAllCallsSince
# CTCallCopyAllIncomingCallsSince
F CTCallCopyAllMissedCallsAfterRowID {CFArrayRef}{CFAllocatorRef}l
F CTCallCopyAllMissedCallsSince {CFArrayRef}{CFAllocatorRef}{CFDateRef}
# CTCallCopyAllOutgoingCallsSince
# CTCallCopyName
# CTCallCopyUUID
# CTCallDeleteAllCallsBeforeDate
# CTCallDial
# CTCallDialEmergency
# CTCallDialEmergencyWithSourceIdentifier
# CTCallDialVoicemail
# CTCallDialVoicemailWithSourceIdentifier
# CTCallDialWithID
# CTCallDialWithIDAndSourceIdentifier
# CTCallDialWithSourceIdentifier
# CTCallDisconnect
# CTCallGetCauseCode
# CTCallGetDuration
# CTCallGetEmergencyStatus
F CTCallGetGetRowIDOfLastInsert i
F CTCallGetID l{CTCallRef}
# CTCallGetMultiPartyCallCountMax
F CTCallGetStartTime B{CTCallRef}^d
# CTCallGetStatus
F CTCallGetTypeID {CFTypeID}
# CTCallHistoryInvalidateCaches
# CTCallHold
# CTCallIsAlerting
# CTCallIsConferenced
# CTCallIsOutgoing
# CTCallIsToVoicemail
# CTCallIsWaiting
# CTCallJoinConference
# CTCallLeaveConference
# CTCallListDisconnect
# CTCallListDisconnectAll
# CTCallResume
# CTCallTimersGetAll
# CTCallTimersGetIncoming
# CTCallTimersGetLast
# CTCallTimersGetLastResetTime
# CTCallTimersGetLifetime
# CTCallTimersGetOutgoing
# CTCallTimersReset

f Foundation

T NSAppleEventManagerSuspensionID ^r{__NSAppleEventManagerSuspension}

E _NSByteOrder
C NS_UnknownByteOrder CFByteOrderUnknown
C NS_LittleEndian CFByteOrderLittleEndian
C NS_BigEndian CFByteOrderBigEndian

# NSComparator

C NSOrderedAscending -1
C NSOrderedSame 0
C NSOrderedDescending 1
T NSComparisonResult {NSInteger}

# NSDecimal

T NSEnumerationOptions {NSUInteger}
# NSHashEnumerator
T NSHashTable {_NSHashTable}
# NSHashTableCallBacks

T NSHashTableOptions {NSUInteger}
T NSInteger l

# NSMapEnumerator

T NSMapTable {_NSMapTable}
# NSMapTableKeyCallBacks

T NSMapTableOptions {NSUInteger}
# NSMapTableValueCallBacks

S _NSPoint "x"{CGFloat}"y"{CGFloat}
T NSPoint {_NSPoint}
T NSPointArray ^{NSPoint}
T NSPointPointer ^{NSPoint}

S _NSRange "location"{NSUInteger}"length"{NSUInteger}
T NSRange {_NSRange}
T NSRangePointer ^{NSRange}

S _NSRect "origin"{NSPoint}"size"{NSSize}
T NSRectArray ^{NSRect}

C NSMinXEdge 0
C NSMinYEdge 1
C NSMaxXEdge 2
C NSMaxYEdge 3

T NSRectPointer ^{NSRect}

C NSApplicationDirectory 1
C NSDemoApplicationDirectory 2
C NSDeveloperApplicationDirectory 3
C NSAdminApplicationDirectory 4
C NSLibraryDirectory 5
C NSDeveloperDirectory 6
C NSUserDirectory 7
C NSDocumentationDirectory 8
C NSDocumentDirectory 9
C NSCoreServiceDirectory 10
C NSAutosavedInformationDirectory 11
C NSDesktopDirectory 12
C NSCachesDirectory 13
C NSApplicationSupportDirectory 14
C NSDownloadsDirectory 15
C NSInputMethodsDirectory 16
C NSMoviesDirectory 17
C NSMusicDirectory 18
C NSPicturesDirectory 19
C NSPrinterDescriptionDirectory 20
C NSSharedPublicDirectory 21
C NSPreferencePanesDirectory 22
C NSItemReplacementDirectory 99
C NSAllApplicationsDirectory 100
C NSAllLibrariesDirectory 101
T NSSearchPathDirectory {NSUInteger}

C NSUserDomainMask 1
C NSLocalDomainMask 2
C NSNetworkDomainMask 4
C NSSystemDomainMask 8
C NSAllDomainsMask 0x0ffff
T NSSearchPathDomainMask {NSUInteger}

S _NSSize "width"{CGFloat}"height"{CGFloat}
T NSSize {_NSSize}

T NSSizePointer ^{NSSize}
T NSSocketNativeHandle i
T NSStringEncoding {NSUInteger}
S NSSwappedDouble "v"Q
S NSSwappedFloat "v"L
T NSTimeInterval d
# NSUncaughtExceptionHandler
T NSUInteger L
T NSZone {_NSZone}

f MapKit

C MKMapTypeStandard 0
C MKMapTypeSatellite 1
C MKMapTypeHybrid 2

V MKErrorDomain @

C MKErrorUnknown 1
C MKErrorServerFailure 2
C MKErrorLoadingThrottled 3
C MKErrorPlacemarkNotFound 4

C MKPinAnnotationColorRed 0
C MKPinAnnotationColorGreen 1
C MKPinAnnotationColorPurple 2

# MKCoordinateRegionMake
F MKCoordinateRegionMakeWithDistance {MKCoordinateRegion}{CLLocationCoordinate2D}{CLLocationDistance}{CLLocationDistance}
# MKCoordinateSpanMake

f MobileWiFi

#F WiFiManagerClientAddNetwork
#F WiFiManagerClientCopyDevices
#F WiFiManagerClientCopyNetworks
#F WiFiManagerClientCopyProperty
#F WiFiManagerClientCreate
#F WiFiManagerClientDisable
#F WiFiManagerClientDisableNetwork
#F WiFiManagerClientDispatchNotificationResponse
#F WiFiManagerClientEnable
#F WiFiManagerClientEnableNetwork
#F WiFiManagerClientGetAssociationMode
#F WiFiManagerClientGetDevice
#F WiFiManagerClientGetType
#F WiFiManagerClientGetTypeID
#F WiFiManagerClientIsNetworkEnabled
#F WiFiManagerClientRegisterNotificationCallback
#F WiFiManagerClientRemoveNetwork
#F WiFiManagerClientScheduleWithRunLoop
#F WiFiManagerClientSetAssociationMode
#F WiFiManagerClientSetPower
#F WiFiManagerClientSetProperty
#F WiFiManagerClientSetType
#F WiFiManagerClientUnscheduleFromRunLoop
#F WiFiManagerClientUpdateNetwork

F WiFiNetworkComparePriority B@@
#F WiFiNetworkCopyFilteredRecord
F WiFiNetworkCopyPassword @@
#F WiFiNetworkCopyPreparedEAPProfile
#F WiFiNetworkCopyRecord
#F WiFiNetworkCreate
#F WiFiNetworkCreateCopy
F WiFiNetworkGetAssociationDate @@
#F WiFiNetworkGetAuthFlags
#F WiFiNetworkGetDirectedState
#F WiFiNetworkGetFloatProperty
#F WiFiNetworkGetIntProperty
#F WiFiNetworkGetProperty
#F WiFiNetworkGetRateBounds
F WiFiNetworkGetSSID @@
F WiFiNetworkGetSSIDData @@
F WiFiNetworkGetTypeID {CFTypeID}
F WiFiNetworkIsEAP B@
F WiFiNetworkIsEnabled B@
F WiFiNetworkIsHidden B@
F WiFiNetworkIsHiddenSSID B@
F WiFiNetworkIsWEP B@
F WiFiNetworkIsWPA B@
#F WiFiNetworkMerge
#F WiFiNetworkMergeForAssociation
#F WiFiNetworkMergeProperties
F WiFiNetworkRemovePassword v@
F WiFiNetworkRequiresIdentity B@
F WiFiNetworkRequiresOneTimePassword B@
F WiFiNetworkRequiresPassword B@
F WiFiNetworkRequiresUsername B@
F WiFiNetworkSetAssociationDate v@@
#F WiFiNetworkSetDirectedState
#F WiFiNetworkSetFloatProperty
#F WiFiNetworkSetIntProperty
F WiFiNetworkSetPassword v@@
#F WiFiNetworkSetProperty

C RTLD_LAZY 0x1
C RTLD_NOW 0x2
C RTLD_LOCAL 0x4
C RTLD_GLOBAL 0x8

C RTLD_NOLOAD 0x10
C RTLD_NODELETE 0x80
C RTLD_FIRST 0x100

C RTLD_NEXT -1
C RTLD_DEFAULT -2
C RTLD_SELF -3

S dl_info "dli_fname"*"dli_fbase"v^"dli_sname"*"dli_saddr"^v
T Dl_info {dl_info}

F dladdr i^rv^{dl_info}
F dlclose i^v
F dlerror *
F dlopen ^v*i
F dlsym ^v^v*
F dlopen_preflight B*
