Created
November 13, 2015 09:30
-
-
Save loplopLover/92f2e61207e588a5b57b to your computer and use it in GitHub Desktop.
Determine if a random NSObject subclass instance is a public or private framework (does not test for your objects)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import Foundation | |
| extension NSObject { | |
| var isPublicClass: Bool { | |
| return self.dynamicType.isPublicClass | |
| } | |
| class var isPublicClass: Bool { | |
| return _PUBLIC_IOS_CLASSES.contains(NSStringFromClass(self)) | |
| } | |
| } | |
| // extraction command: | |
| // | |
| // find /Applications/Xcode.app/Contents/Developer/Documentation/DocSets/com.apple.adc.documentation.iOS.docset -type d | egrep '/(Objective-C|swift)/' | sed 's/.*\///' | sort -u | grep '^[A-Z]' | sed 's/.*/"&",/' | pbcopy | |
| // | |
| // | |
| private let _PUBLIC_IOS_CLASSES = Set([ | |
| "ABNewPersonViewController", | |
| "ABNewPersonViewControllerDelegate", | |
| "ABPeoplePickerNavigationController", | |
| "ABPeoplePickerNavigationControllerDelegate", | |
| "ABPersonViewController", | |
| "ABPersonViewControllerDelegate", | |
| "ABUnknownPersonViewController", | |
| "ABUnknownPersonViewControllerDelegate", | |
| "ACAccount", | |
| "ACAccountCredential", | |
| "ACAccountStore", | |
| "ACAccountType", | |
| "ADBannerView", | |
| "ADBannerViewDelegate", | |
| "ADClient", | |
| "ADInterstitialAd", | |
| "ADInterstitialAdDelegate", | |
| "ALAsset", | |
| "ALAssetRepresentation", | |
| "ALAssetsFilter", | |
| "ALAssetsGroup", | |
| "ALAssetsLibrary", | |
| "ASIdentifierManager", | |
| "AVAsset", | |
| "AVAssetExportSession", | |
| "AVAssetImageGenerator", | |
| "AVAssetReader", | |
| "AVAssetReaderAudioMixOutput", | |
| "AVAssetReaderOutput", | |
| "AVAssetReaderOutputMetadataAdaptor", | |
| "AVAssetReaderSampleReferenceOutput", | |
| "AVAssetReaderTrackOutput", | |
| "AVAssetReaderVideoCompositionOutput", | |
| "AVAssetResourceLoader", | |
| "AVAssetResourceLoaderDelegate", | |
| "AVAssetResourceLoadingContentInformationRequest", | |
| "AVAssetResourceLoadingDataRequest", | |
| "AVAssetResourceLoadingRequest", | |
| "AVAssetTrack", | |
| "AVAssetTrackGroup", | |
| "AVAssetTrackSegment", | |
| "AVAssetWriter", | |
| "AVAssetWriterInput", | |
| "AVAssetWriterInputGroup", | |
| "AVAssetWriterInputMetadataAdaptor", | |
| "AVAssetWriterInputPassDescription", | |
| "AVAssetWriterInputPixelBufferAdaptor", | |
| "AVAsynchronousKeyValueLoading", | |
| "AVAsynchronousVideoCompositionRequest", | |
| "AVAudio3DMixing", | |
| "AVAudioBuffer", | |
| "AVAudioChannelLayout", | |
| "AVAudioEngine", | |
| "AVAudioEnvironmentDistanceAttenuationParameters", | |
| "AVAudioEnvironmentNode", | |
| "AVAudioEnvironmentReverbParameters", | |
| "AVAudioFile", | |
| "AVAudioFormat", | |
| "AVAudioIONode", | |
| "AVAudioMix", | |
| "AVAudioMixInputParameters", | |
| "AVAudioMixerNode", | |
| "AVAudioMixing", | |
| "AVAudioNode", | |
| "AVAudioPCMBuffer", | |
| "AVAudioPlayer", | |
| "AVAudioPlayerDelegate", | |
| "AVAudioPlayerNode", | |
| "AVAudioRecorder", | |
| "AVAudioRecorderDelegate", | |
| "AVAudioSession", | |
| "AVAudioSessionChannelDescription", | |
| "AVAudioSessionDataSourceDescription", | |
| "AVAudioSessionDelegate", | |
| "AVAudioSessionPortDescription", | |
| "AVAudioSessionRouteDescription", | |
| "AVAudioStereoMixing", | |
| "AVAudioTime", | |
| "AVAudioUnit", | |
| "AVAudioUnitDelay", | |
| "AVAudioUnitDistortion", | |
| "AVAudioUnitEQ", | |
| "AVAudioUnitEQFilterParameters", | |
| "AVAudioUnitEffect", | |
| "AVAudioUnitGenerator", | |
| "AVAudioUnitMIDIInstrument", | |
| "AVAudioUnitReverb", | |
| "AVAudioUnitSampler", | |
| "AVAudioUnitTimeEffect", | |
| "AVAudioUnitTimePitch", | |
| "AVAudioUnitVarispeed", | |
| "AVCaptureAudioChannel", | |
| "AVCaptureAudioDataOutput", | |
| "AVCaptureAudioDataOutputSampleBufferDelegate", | |
| "AVCaptureAutoExposureBracketedStillImageSettings", | |
| "AVCaptureConnection", | |
| "AVCaptureDevice", | |
| "AVCaptureDeviceFormat", | |
| "AVCaptureDeviceInput", | |
| "AVCaptureFileOutput", | |
| "AVCaptureFileOutputRecordingDelegate", | |
| "AVCaptureInput", | |
| "AVCaptureInputPort", | |
| "AVCaptureManualExposureBracketedStillImageSettings", | |
| "AVCaptureMetadataOutput", | |
| "AVCaptureMetadataOutputObjectsDelegate", | |
| "AVCaptureMovieFileOutput", | |
| "AVCaptureOutput", | |
| "AVCaptureSession", | |
| "AVCaptureStillImageOutput", | |
| "AVCaptureVideoDataOutput", | |
| "AVCaptureVideoDataOutputSampleBufferDelegate", | |
| "AVCaptureVideoPreviewLayer", | |
| "AVCaptureView", | |
| "AVComposition", | |
| "AVCompositionTrack", | |
| "AVCompositionTrackSegment", | |
| "AVFrameRateRange", | |
| "AVMIDIPlayer", | |
| "AVMediaSelectionGroup", | |
| "AVMediaSelectionOption", | |
| "AVMetadataFaceObject", | |
| "AVMetadataItem", | |
| "AVMetadataItemFilter", | |
| "AVMetadataMachineReadableCodeObject", | |
| "AVMetadataObject", | |
| "AVMutableAudioMix", | |
| "AVMutableAudioMixInputParameters", | |
| "AVMutableComposition", | |
| "AVMutableCompositionTrack", | |
| "AVMutableMetadataItem", | |
| "AVMutableTimedMetadataGroup", | |
| "AVMutableVideoComposition", | |
| "AVMutableVideoCompositionInstruction", | |
| "AVMutableVideoCompositionLayerInstruction", | |
| "AVOutputSettingsAssistant", | |
| "AVPlayer", | |
| "AVPlayerItem", | |
| "AVPlayerItemAccessLog", | |
| "AVPlayerItemAccessLogEvent", | |
| "AVPlayerItemErrorLog", | |
| "AVPlayerItemErrorLogEvent", | |
| "AVPlayerItemLegibleOutput", | |
| "AVPlayerItemLegibleOutputPushDelegate", | |
| "AVPlayerItemMetadataOutput", | |
| "AVPlayerItemMetadataOutputPushDelegate", | |
| "AVPlayerItemOutput", | |
| "AVPlayerItemOutputPullDelegate", | |
| "AVPlayerItemOutputPushDelegate", | |
| "AVPlayerItemTrack", | |
| "AVPlayerItemVideoOutput", | |
| "AVPlayerLayer", | |
| "AVPlayerMediaSelectionCriteria", | |
| "AVPlayerViewController", | |
| "AVQueuePlayer", | |
| "AVSampleBufferDisplayLayer", | |
| "AVSpeechSynthesisVoice", | |
| "AVSpeechSynthesizer", | |
| "AVSpeechSynthesizerDelegate", | |
| "AVSpeechUtterance", | |
| "AVSynchronizedLayer", | |
| "AVTextStyleRule", | |
| "AVTimedMetadataGroup", | |
| "AVURLAsset", | |
| "AVVideoCompositing", | |
| "AVVideoComposition", | |
| "AVVideoCompositionCoreAnimationTool", | |
| "AVVideoCompositionInstruction", | |
| "AVVideoCompositionInstructionProtocol", | |
| "AVVideoCompositionLayerInstruction", | |
| "AVVideoCompositionRenderContext", | |
| "AVVideoCompositionValidationHandling", | |
| "CAAction", | |
| "CAAnimation", | |
| "CAAnimationGroup", | |
| "CABasicAnimation", | |
| "CADisplayLink", | |
| "CAEAGLLayer", | |
| "CAEmitterCell", | |
| "CAEmitterLayer", | |
| "CAGradientLayer", | |
| "CAKeyframeAnimation", | |
| "CALayer", | |
| "CAMediaTiming", | |
| "CAMediaTimingFunction", | |
| "CAMetalDrawable", | |
| "CAMetalLayer", | |
| "CAPropertyAnimation", | |
| "CAReplicatorLayer", | |
| "CAScrollLayer", | |
| "CAShapeLayer", | |
| "CATextLayer", | |
| "CATiledLayer", | |
| "CATransaction", | |
| "CATransformLayer", | |
| "CATransition", | |
| "CAValueFunction", | |
| "CBATTRequest", | |
| "CBCentral", | |
| "CBCentralManager", | |
| "CBCentralManagerDelegate", | |
| "CBCharacteristic", | |
| "CBDescriptor", | |
| "CBMutableCharacteristic", | |
| "CBMutableDescriptor", | |
| "CBMutableService", | |
| "CBPeripheral", | |
| "CBPeripheralDelegate", | |
| "CBPeripheralManager", | |
| "CBPeripheralManagerDelegate", | |
| "CBService", | |
| "CBUUID", | |
| "CIColor", | |
| "CIColorKernel", | |
| "CIContext", | |
| "CIDetector", | |
| "CIFaceFeature", | |
| "CIFeature", | |
| "CIFilter", | |
| "CIImage", | |
| "CIKernel", | |
| "CIQRCodeFeature", | |
| "CIRectangleFeature", | |
| "CIVector", | |
| "CIWarpKernel", | |
| "CKAsset", | |
| "CKContainer", | |
| "CKDatabase", | |
| "CKDatabaseOperation", | |
| "CKDiscoverAllContactsOperation", | |
| "CKDiscoverUserInfosOperation", | |
| "CKDiscoveredUserInfo", | |
| "CKFetchNotificationChangesOperation", | |
| "CKFetchRecordChangesOperation", | |
| "CKFetchRecordZonesOperation", | |
| "CKFetchRecordsOperation", | |
| "CKFetchSubscriptionsOperation", | |
| "CKLocationSortDescriptor", | |
| "CKMarkNotificationsReadOperation", | |
| "CKModifyBadgeOperation", | |
| "CKModifyRecordZonesOperation", | |
| "CKModifyRecordsOperation", | |
| "CKModifySubscriptionsOperation", | |
| "CKNotification", | |
| "CKNotificationInfo", | |
| "CKOperation", | |
| "CKQuery", | |
| "CKQueryNotification", | |
| "CKQueryOperation", | |
| "CKRecord", | |
| "CKRecordID", | |
| "CKRecordZone", | |
| "CKRecordZoneID", | |
| "CKRecordZoneNotification", | |
| "CKReference", | |
| "CKSubscription", | |
| "CLBeacon", | |
| "CLBeaconRegion", | |
| "CLCircularRegion", | |
| "CLFloor", | |
| "CLGeocoder", | |
| "CLHeading", | |
| "CLLocation", | |
| "CLLocationManager", | |
| "CLLocationManagerDelegate", | |
| "CLPlacemark", | |
| "CLRegion", | |
| "CLVisit", | |
| "CMAccelerometerData", | |
| "CMAltimeter", | |
| "CMAltitudeData", | |
| "CMAttitude", | |
| "CMDeviceMotion", | |
| "CMGyroData", | |
| "CMLogItem", | |
| "CMMagnetometerData", | |
| "CMMotionActivity", | |
| "CMMotionActivityManager", | |
| "CMMotionManager", | |
| "CMPedometer", | |
| "CMPedometerData", | |
| "CMStepCounter", | |
| "CTCall", | |
| "CTCallCenter", | |
| "CTCarrier", | |
| "CTSubscriber", | |
| "CTTelephonyNetworkInfo", | |
| "EAAccessory", | |
| "EAAccessoryDelegate", | |
| "EAAccessoryManager", | |
| "EAGLContext", | |
| "EAGLDrawable", | |
| "EASession", | |
| "EAWiFiUnconfiguredAccessory", | |
| "EAWiFiUnconfiguredAccessoryBrowser", | |
| "EAWiFiUnconfiguredAccessoryBrowserDelegate", | |
| "EKAlarm", | |
| "EKCalendar", | |
| "EKCalendarChooser", | |
| "EKCalendarChooserDelegate", | |
| "EKCalendarItem", | |
| "EKEvent", | |
| "EKEventEditViewController", | |
| "EKEventEditViewDelegate", | |
| "EKEventStore", | |
| "EKEventViewController", | |
| "EKEventViewDelegate", | |
| "EKObject", | |
| "EKParticipant", | |
| "EKRecurrenceDayOfWeek", | |
| "EKRecurrenceEnd", | |
| "EKRecurrenceRule", | |
| "EKReminder", | |
| "EKSource", | |
| "EKStructuredLocation", | |
| "GCController", | |
| "GCControllerAxisInput", | |
| "GCControllerButtonInput", | |
| "GCControllerDirectionPad", | |
| "GCControllerElement", | |
| "GCExtendedGamepad", | |
| "GCExtendedGamepadSnapshot", | |
| "GCGamepad", | |
| "GCGamepadSnapshot", | |
| "GCMotion", | |
| "GKAchievement", | |
| "GKAchievementChallenge", | |
| "GKAchievementDescription", | |
| "GKAchievementViewController", | |
| "GKAchievementViewControllerDelegate", | |
| "GKChallenge", | |
| "GKChallengeEventHandler", | |
| "GKChallengeEventHandlerDelegate", | |
| "GKChallengeListener", | |
| "GKFriendRequestComposeViewController", | |
| "GKFriendRequestComposeViewControllerDelegate", | |
| "GKGameCenterControllerDelegate", | |
| "GKGameCenterViewController", | |
| "GKInvite", | |
| "GKInviteEventListener", | |
| "GKLeaderboard", | |
| "GKLeaderboardSet", | |
| "GKLeaderboardViewController", | |
| "GKLeaderboardViewControllerDelegate", | |
| "GKLocalPlayer", | |
| "GKMatch", | |
| "GKMatchDelegate", | |
| "GKMatchRequest", | |
| "GKMatchmaker", | |
| "GKMatchmakerViewController", | |
| "GKMatchmakerViewControllerDelegate", | |
| "GKNotificationBanner", | |
| "GKPeerPickerController", | |
| "GKPeerPickerControllerDelegate", | |
| "GKPlayer", | |
| "GKSavedGame", | |
| "GKSavedGameListener", | |
| "GKScore", | |
| "GKScoreChallenge", | |
| "GKSession", | |
| "GKSessionDelegate", | |
| "GKTurnBasedEventHandler", | |
| "GKTurnBasedEventHandlerDelegate", | |
| "GKTurnBasedEventListener", | |
| "GKTurnBasedExchange", | |
| "GKTurnBasedExchangeReply", | |
| "GKTurnBasedMatch", | |
| "GKTurnBasedMatchmakerViewController", | |
| "GKTurnBasedMatchmakerViewControllerDelegate", | |
| "GKTurnBasedParticipant", | |
| "GKVoiceChat", | |
| "GKVoiceChatClient", | |
| "GKVoiceChatService", | |
| "GLKBaseEffect", | |
| "GLKEffectPropertyFog", | |
| "GLKEffectPropertyLight", | |
| "GLKEffectPropertyMaterial", | |
| "GLKEffectPropertyTexture", | |
| "GLKEffectPropertyTransform", | |
| "GLKNamedEffect", | |
| "GLKReflectionMapEffect", | |
| "GLKSkyboxEffect", | |
| "GLKTextureInfo", | |
| "GLKTextureLoader", | |
| "GLKView", | |
| "GLKViewController", | |
| "GLKViewControllerDelegate", | |
| "GLKViewDelegate", | |
| "HKAnchoredObjectQuery", | |
| "HKBiologicalSexObject", | |
| "HKBloodTypeObject", | |
| "HKCategorySample", | |
| "HKCorrelation", | |
| "HKCorrelationQuery", | |
| "HKHealthStore", | |
| "HKObject", | |
| "HKObjectType", | |
| "HKObserverQuery", | |
| "HKQuantity", | |
| "HKQuantitySample", | |
| "HKQuantityType", | |
| "HKQuery", | |
| "HKSample", | |
| "HKSampleQuery", | |
| "HKSource", | |
| "HKSourceQuery", | |
| "HKStatistics", | |
| "HKStatisticsCollection", | |
| "HKStatisticsCollectionQuery", | |
| "HKStatisticsQuery", | |
| "HKUnit", | |
| "HKWorkout", | |
| "HKWorkoutEvent", | |
| "HMAccessory", | |
| "HMAccessoryBrowser", | |
| "HMAccessoryBrowserDelegate", | |
| "HMAccessoryDelegate", | |
| "HMActionSet", | |
| "HMCharacteristic", | |
| "HMCharacteristicMetadata", | |
| "HMCharacteristicWriteAction", | |
| "HMHome", | |
| "HMHomeDelegate", | |
| "HMHomeManager", | |
| "HMHomeManagerDelegate", | |
| "HMRoom", | |
| "HMService", | |
| "HMServiceGroup", | |
| "HMTimerTrigger", | |
| "HMTrigger", | |
| "HMUser", | |
| "HMZone", | |
| "LAContext", | |
| "MCAdvertiserAssistant", | |
| "MCAdvertiserAssistantDelegate", | |
| "MCBrowserViewController", | |
| "MCBrowserViewControllerDelegate", | |
| "MCNearbyServiceAdvertiser", | |
| "MCNearbyServiceAdvertiserDelegate", | |
| "MCNearbyServiceBrowser", | |
| "MCNearbyServiceBrowserDelegate", | |
| "MCPeerID", | |
| "MCSession", | |
| "MCSessionDelegate", | |
| "MFMailComposeViewController", | |
| "MFMailComposeViewControllerDelegate", | |
| "MFMessageComposeViewController", | |
| "MFMessageComposeViewControllerDelegate", | |
| "MIDINetworkConnection", | |
| "MIDINetworkHost", | |
| "MIDINetworkSession", | |
| "MKAnnotation", | |
| "MKAnnotationView", | |
| "MKCircle", | |
| "MKCircleRenderer", | |
| "MKCircleView", | |
| "MKDirections", | |
| "MKDirectionsRequest", | |
| "MKDirectionsResponse", | |
| "MKDistanceFormatter", | |
| "MKETAResponse", | |
| "MKGeodesicPolyline", | |
| "MKLocalSearch", | |
| "MKLocalSearchRequest", | |
| "MKLocalSearchResponse", | |
| "MKMapCamera", | |
| "MKMapItem", | |
| "MKMapSnapshot", | |
| "MKMapSnapshotOptions", | |
| "MKMapSnapshotter", | |
| "MKMapView", | |
| "MKMapViewDelegate", | |
| "MKMultiPoint", | |
| "MKOverlay", | |
| "MKOverlayPathRenderer", | |
| "MKOverlayPathView", | |
| "MKOverlayRenderer", | |
| "MKOverlayView", | |
| "MKPinAnnotationView", | |
| "MKPlacemark", | |
| "MKPointAnnotation", | |
| "MKPolygon", | |
| "MKPolygonRenderer", | |
| "MKPolygonView", | |
| "MKPolyline", | |
| "MKPolylineRenderer", | |
| "MKPolylineView", | |
| "MKReverseGeocoder", | |
| "MKReverseGeocoderDelegate", | |
| "MKRoute", | |
| "MKRouteStep", | |
| "MKShape", | |
| "MKTileOverlay", | |
| "MKTileOverlayRenderer", | |
| "MKUserLocation", | |
| "MKUserTrackingBarButtonItem", | |
| "MPChangePlaybackRateCommand", | |
| "MPChangePlaybackRateCommandEvent", | |
| "MPContentItem", | |
| "MPFeedbackCommand", | |
| "MPFeedbackCommandEvent", | |
| "MPMediaEntity", | |
| "MPMediaItem", | |
| "MPMediaItemArtwork", | |
| "MPMediaItemCollection", | |
| "MPMediaLibrary", | |
| "MPMediaPickerController", | |
| "MPMediaPickerControllerDelegate", | |
| "MPMediaPlayback", | |
| "MPMediaPropertyPredicate", | |
| "MPMediaQuery", | |
| "MPMediaQuerySection", | |
| "MPMovieAccessLog", | |
| "MPMovieAccessLogEvent", | |
| "MPMovieErrorLog", | |
| "MPMovieErrorLogEvent", | |
| "MPMoviePlayerController", | |
| "MPMoviePlayerViewController", | |
| "MPMusicPlayerController", | |
| "MPNowPlayingInfoCenter", | |
| "MPPlayableContentDataSource", | |
| "MPPlayableContentDelegate", | |
| "MPPlayableContentManager", | |
| "MPRatingCommand", | |
| "MPRatingCommandEvent", | |
| "MPRemoteCommand", | |
| "MPRemoteCommandCenter", | |
| "MPRemoteCommandEvent", | |
| "MPSeekCommandEvent", | |
| "MPSkipIntervalCommand", | |
| "MPSkipIntervalCommandEvent", | |
| "MPTimedMetadata", | |
| "MPVolumeView", | |
| "MTLArgument", | |
| "MTLArrayType", | |
| "MTLBlitCommandEncoder", | |
| "MTLBuffer", | |
| "MTLCommandBuffer", | |
| "MTLCommandEncoder", | |
| "MTLCommandQueue", | |
| "MTLCompileOptions", | |
| "MTLComputeCommandEncoder", | |
| "MTLComputePipelineReflection", | |
| "MTLComputePipelineState", | |
| "MTLDepthStencilDescriptor", | |
| "MTLDepthStencilState", | |
| "MTLDevice", | |
| "MTLDrawable", | |
| "MTLFunction", | |
| "MTLLibrary", | |
| "MTLParallelRenderCommandEncoder", | |
| "MTLRenderCommandEncoder", | |
| "MTLRenderPassAttachmentDescriptor", | |
| "MTLRenderPassColorAttachmentDescriptor", | |
| "MTLRenderPassColorAttachmentDescriptorArray", | |
| "MTLRenderPassDepthAttachmentDescriptor", | |
| "MTLRenderPassDescriptor", | |
| "MTLRenderPassStencilAttachmentDescriptor", | |
| "MTLRenderPipelineColorAttachmentDescriptor", | |
| "MTLRenderPipelineColorAttachmentDescriptorArray", | |
| "MTLRenderPipelineDescriptor", | |
| "MTLRenderPipelineReflection", | |
| "MTLRenderPipelineState", | |
| "MTLResource", | |
| "MTLSamplerDescriptor", | |
| "MTLSamplerState", | |
| "MTLStencilDescriptor", | |
| "MTLStructMember", | |
| "MTLStructType", | |
| "MTLTexture", | |
| "MTLTextureDescriptor", | |
| "MTLVertexAttribute", | |
| "MTLVertexAttributeDescriptor", | |
| "MTLVertexAttributeDescriptorArray", | |
| "MTLVertexBufferLayoutDescriptor", | |
| "MTLVertexBufferLayoutDescriptorArray", | |
| "MTLVertexDescriptor", | |
| "NCWidgetController", | |
| "NCWidgetProviding", | |
| "NKAssetDownload", | |
| "NKIssue", | |
| "NKLibrary", | |
| "NSArray", | |
| "NSAssertionHandler", | |
| "NSAtomicStore", | |
| "NSAtomicStoreCacheNode", | |
| "NSAttributeDescription", | |
| "NSAttributedString", | |
| "NSAutoreleasePool", | |
| "NSBlockOperation", | |
| "NSBundle", | |
| "NSByteCountFormatter", | |
| "NSCache", | |
| "NSCacheDelegate", | |
| "NSCachedURLResponse", | |
| "NSCalendar", | |
| "NSCharacterSet", | |
| "NSCoder", | |
| "NSCoding", | |
| "NSComparisonPredicate", | |
| "NSCompoundPredicate", | |
| "NSCondition", | |
| "NSConditionLock", | |
| "NSCopying", | |
| "NSCountedSet", | |
| "NSData", | |
| "NSDataDetector", | |
| "NSDate", | |
| "NSDateComponents", | |
| "NSDateComponentsFormatter", | |
| "NSDateFormatter", | |
| "NSDateIntervalFormatter", | |
| "NSDecimalNumber", | |
| "NSDecimalNumberBehaviors", | |
| "NSDecimalNumberHandler", | |
| "NSDictionary", | |
| "NSDirectoryEnumerator", | |
| "NSDiscardableContent", | |
| "NSEnergyFormatter", | |
| "NSEntityDescription", | |
| "NSEntityMapping", | |
| "NSEntityMigrationPolicy", | |
| "NSEnumerator", | |
| "NSError", | |
| "NSException", | |
| "NSExpression", | |
| "NSExpressionDescription", | |
| "NSExtensionContext", | |
| "NSExtensionItem", | |
| "NSExtensionRequestHandling", | |
| "NSFastEnumeration", | |
| "NSFetchRequest", | |
| "NSFetchRequestExpression", | |
| "NSFetchedPropertyDescription", | |
| "NSFetchedResultsController", | |
| "NSFetchedResultsControllerDelegate", | |
| "NSFetchedResultsSectionInfo", | |
| "NSFileAccessIntent", | |
| "NSFileCoordinator", | |
| "NSFileHandle", | |
| "NSFileManager", | |
| "NSFileManagerDelegate", | |
| "NSFilePresenter", | |
| "NSFileProviderExtension", | |
| "NSFileVersion", | |
| "NSFileWrapper", | |
| "NSFormatter", | |
| "NSHTTPCookie", | |
| "NSHTTPCookieStorage", | |
| "NSHTTPURLResponse", | |
| "NSHashTable", | |
| "NSIncrementalStore", | |
| "NSIncrementalStoreNode", | |
| "NSIndexPath", | |
| "NSIndexSet", | |
| "NSInputStream", | |
| "NSInvocation", | |
| "NSInvocationOperation", | |
| "NSItemProvider", | |
| "NSJSONSerialization", | |
| "NSKeyedArchiver", | |
| "NSKeyedArchiverDelegate", | |
| "NSKeyedUnarchiver", | |
| "NSKeyedUnarchiverDelegate", | |
| "NSLayoutConstraint", | |
| "NSLayoutManager", | |
| "NSLayoutManagerDelegate", | |
| "NSLengthFormatter", | |
| "NSLinguisticTagger", | |
| "NSLocale", | |
| "NSLock", | |
| "NSLocking", | |
| "NSMachPort", | |
| "NSMachPortDelegate", | |
| "NSManagedObject", | |
| "NSManagedObjectContext", | |
| "NSManagedObjectID", | |
| "NSManagedObjectModel", | |
| "NSMapTable", | |
| "NSMappingModel", | |
| "NSMassFormatter", | |
| "NSMergeConflict", | |
| "NSMergePolicy", | |
| "NSMetadataItem", | |
| "NSMetadataQuery", | |
| "NSMetadataQueryAttributeValueTuple", | |
| "NSMetadataQueryDelegate", | |
| "NSMetadataQueryResultGroup", | |
| "NSMethodSignature", | |
| "NSMigrationManager", | |
| "NSMutableArray", | |
| "NSMutableAttributedString", | |
| "NSMutableCharacterSet", | |
| "NSMutableCopying", | |
| "NSMutableData", | |
| "NSMutableDictionary", | |
| "NSMutableIndexSet", | |
| "NSMutableOrderedSet", | |
| "NSMutableParagraphStyle", | |
| "NSMutableSet", | |
| "NSMutableString", | |
| "NSMutableURLRequest", | |
| "NSNetService", | |
| "NSNetServiceBrowser", | |
| "NSNetServiceBrowserDelegate", | |
| "NSNetServiceDelegate", | |
| "NSNotification", | |
| "NSNotificationCenter", | |
| "NSNotificationQueue", | |
| "NSNull", | |
| "NSNumber", | |
| "NSNumberFormatter", | |
| "NSObject", | |
| "NSObjectProtocol", | |
| "NSOperation", | |
| "NSOperationQueue", | |
| "NSOrderedSet", | |
| "NSOrthography", | |
| "NSOutputStream", | |
| "NSParagraphStyle", | |
| "NSPersistentStore", | |
| "NSPersistentStoreCoordinator", | |
| "NSPersistentStoreRequest", | |
| "NSPipe", | |
| "NSPointerArray", | |
| "NSPointerFunctions", | |
| "NSPort", | |
| "NSPortDelegate", | |
| "NSPredicate", | |
| "NSProcessInfo", | |
| "NSProgress", | |
| "NSPropertyDescription", | |
| "NSPropertyListSerialization", | |
| "NSPropertyMapping", | |
| "NSProxy", | |
| "NSRecursiveLock", | |
| "NSRegularExpression", | |
| "NSRelationshipDescription", | |
| "NSRunLoop", | |
| "NSSaveChangesRequest", | |
| "NSScanner", | |
| "NSSecureCoding", | |
| "NSSet", | |
| "NSShadow", | |
| "NSSortDescriptor", | |
| "NSStream", | |
| "NSStreamDelegate", | |
| "NSString", | |
| "NSStringDrawingContext", | |
| "NSTextAttachment", | |
| "NSTextAttachmentContainer", | |
| "NSTextCheckingResult", | |
| "NSTextContainer", | |
| "NSTextLayoutOrientationProvider", | |
| "NSTextStorage", | |
| "NSTextStorageDelegate", | |
| "NSTextTab", | |
| "NSThread", | |
| "NSTimeZone", | |
| "NSTimer", | |
| "NSURL", | |
| "NSURLAuthenticationChallenge", | |
| "NSURLAuthenticationChallengeSender", | |
| "NSURLCache", | |
| "NSURLComponents", | |
| "NSURLConnection", | |
| "NSURLConnectionDataDelegate", | |
| "NSURLConnectionDelegate", | |
| "NSURLConnectionDownloadDelegate", | |
| "NSURLCredential", | |
| "NSURLCredentialStorage", | |
| "NSURLProtectionSpace", | |
| "NSURLProtocol", | |
| "NSURLProtocolClient", | |
| "NSURLQueryItem", | |
| "NSURLRequest", | |
| "NSURLResponse", | |
| "NSURLSession", | |
| "NSURLSessionConfiguration", | |
| "NSURLSessionDataDelegate", | |
| "NSURLSessionDelegate", | |
| "NSURLSessionDownloadDelegate", | |
| "NSURLSessionDownloadTask", | |
| "NSURLSessionTask", | |
| "NSURLSessionTaskDelegate", | |
| "NSUUID", | |
| "NSUbiquitousKeyValueStore", | |
| "NSUndoManager", | |
| "NSUserActivity", | |
| "NSUserActivityDelegate", | |
| "NSUserDefaults", | |
| "NSValue", | |
| "NSValueTransformer", | |
| "NSXMLParser", | |
| "NSXMLParserDelegate", | |
| "PHAdjustmentData", | |
| "PHAsset", | |
| "PHAssetChangeRequest", | |
| "PHAssetCollection", | |
| "PHAssetCollectionChangeRequest", | |
| "PHCachingImageManager", | |
| "PHChange", | |
| "PHCollection", | |
| "PHCollectionList", | |
| "PHCollectionListChangeRequest", | |
| "PHContentEditingController", | |
| "PHContentEditingInput", | |
| "PHContentEditingInputRequestOptions", | |
| "PHContentEditingOutput", | |
| "PHFetchOptions", | |
| "PHFetchResult", | |
| "PHFetchResultChangeDetails", | |
| "PHImageManager", | |
| "PHImageRequestOptions", | |
| "PHObject", | |
| "PHObjectChangeDetails", | |
| "PHPhotoLibrary", | |
| "PHPhotoLibraryChangeObserver", | |
| "PHVideoRequestOptions", | |
| "PKAddPassesViewController", | |
| "PKAddPassesViewControllerDelegate", | |
| "PKPass", | |
| "PKPassLibrary", | |
| "PKPayment", | |
| "PKPaymentAuthorizationViewController", | |
| "PKPaymentAuthorizationViewControllerDelegate", | |
| "PKPaymentButton", | |
| "PKPaymentPass", | |
| "PKPaymentRequest", | |
| "PKPaymentSummaryItem", | |
| "PKPaymentToken", | |
| "PKPushCredentials", | |
| "PKPushPayload", | |
| "PKPushRegistry", | |
| "PKPushRegistryDelegate", | |
| "PKShippingMethod", | |
| "QLPreviewController", | |
| "QLPreviewControllerDataSource", | |
| "QLPreviewControllerDelegate", | |
| "QLPreviewItem", | |
| "SCNAction", | |
| "SCNActionable", | |
| "SCNAnimatable", | |
| "SCNAnimationEvent", | |
| "SCNBoundingVolume", | |
| "SCNBox", | |
| "SCNCamera", | |
| "SCNCapsule", | |
| "SCNCone", | |
| "SCNConstraint", | |
| "SCNCylinder", | |
| "SCNFloor", | |
| "SCNGeometry", | |
| "SCNGeometryElement", | |
| "SCNGeometrySource", | |
| "SCNHitTestResult", | |
| "SCNIKConstraint", | |
| "SCNLevelOfDetail", | |
| "SCNLight", | |
| "SCNLookAtConstraint", | |
| "SCNMaterial", | |
| "SCNMaterialProperty", | |
| "SCNMorpher", | |
| "SCNNode", | |
| "SCNNodeRendererDelegate", | |
| "SCNParticlePropertyController", | |
| "SCNParticleSystem", | |
| "SCNPhysicsBallSocketJoint", | |
| "SCNPhysicsBody", | |
| "SCNPhysicsContact", | |
| "SCNPhysicsContactDelegate", | |
| "SCNPhysicsField", | |
| "SCNPhysicsHingeJoint", | |
| "SCNPhysicsShape", | |
| "SCNPhysicsSliderJoint", | |
| "SCNPhysicsVehicle", | |
| "SCNPhysicsVehicleWheel", | |
| "SCNPhysicsWorld", | |
| "SCNPlane", | |
| "SCNProgram", | |
| "SCNProgramDelegate", | |
| "SCNPyramid", | |
| "SCNRenderer", | |
| "SCNScene", | |
| "SCNSceneRenderer", | |
| "SCNSceneRendererDelegate", | |
| "SCNSceneSource", | |
| "SCNShadable", | |
| "SCNShape", | |
| "SCNSkinner", | |
| "SCNSphere", | |
| "SCNTechnique", | |
| "SCNTechniqueSupport", | |
| "SCNText", | |
| "SCNTorus", | |
| "SCNTransaction", | |
| "SCNTransformConstraint", | |
| "SCNTube", | |
| "SCNView", | |
| "SK3DNode", | |
| "SKAction", | |
| "SKConstraint", | |
| "SKCropNode", | |
| "SKDownload", | |
| "SKEffectNode", | |
| "SKEmitterNode", | |
| "SKFieldNode", | |
| "SKKeyframeSequence", | |
| "SKLabelNode", | |
| "SKLightNode", | |
| "SKMutablePayment", | |
| "SKMutableTexture", | |
| "SKNode", | |
| "SKPayment", | |
| "SKPaymentQueue", | |
| "SKPaymentTransaction", | |
| "SKPaymentTransactionObserver", | |
| "SKPhysicsBody", | |
| "SKPhysicsContact", | |
| "SKPhysicsContactDelegate", | |
| "SKPhysicsJoint", | |
| "SKPhysicsJointFixed", | |
| "SKPhysicsJointLimit", | |
| "SKPhysicsJointPin", | |
| "SKPhysicsJointSliding", | |
| "SKPhysicsJointSpring", | |
| "SKPhysicsWorld", | |
| "SKProduct", | |
| "SKProductsRequest", | |
| "SKProductsRequestDelegate", | |
| "SKProductsResponse", | |
| "SKRange", | |
| "SKReachConstraints", | |
| "SKReceiptRefreshRequest", | |
| "SKRegion", | |
| "SKRequest", | |
| "SKRequestDelegate", | |
| "SKScene", | |
| "SKSceneDelegate", | |
| "SKShader", | |
| "SKShapeNode", | |
| "SKSpriteNode", | |
| "SKStoreProductViewController", | |
| "SKStoreProductViewControllerDelegate", | |
| "SKTexture", | |
| "SKTextureAtlas", | |
| "SKTransition", | |
| "SKUniform", | |
| "SKVideoNode", | |
| "SKView", | |
| "SLComposeServiceViewController", | |
| "SLComposeSheetConfigurationItem", | |
| "SLComposeViewController", | |
| "SLRequest", | |
| "TWRequest", | |
| "TWTweetComposeViewController", | |
| "UIAcceleration", | |
| "UIAccelerometer", | |
| "UIAccelerometerDelegate", | |
| "UIAccessibilityCustomAction", | |
| "UIAccessibilityElement", | |
| "UIAccessibilityIdentification", | |
| "UIAccessibilityReadingContent", | |
| "UIActionSheet", | |
| "UIActionSheetDelegate", | |
| "UIActivity", | |
| "UIActivityIndicatorView", | |
| "UIActivityItemProvider", | |
| "UIActivityItemSource", | |
| "UIActivityViewController", | |
| "UIAdaptivePresentationControllerDelegate", | |
| "UIAlertAction", | |
| "UIAlertController", | |
| "UIAlertView", | |
| "UIAlertViewDelegate", | |
| "UIAppearance", | |
| "UIApplication", | |
| "UIApplicationDelegate", | |
| "UIAttachmentBehavior", | |
| "UIBarButtonItem", | |
| "UIBarItem", | |
| "UIBarPositioning", | |
| "UIBarPositioningDelegate", | |
| "UIBezierPath", | |
| "UIBlurEffect", | |
| "UIButton", | |
| "UICollectionReusableView", | |
| "UICollectionView", | |
| "UICollectionViewCell", | |
| "UICollectionViewController", | |
| "UICollectionViewDataSource", | |
| "UICollectionViewDelegate", | |
| "UICollectionViewDelegateFlowLayout", | |
| "UICollectionViewFlowLayout", | |
| "UICollectionViewFlowLayoutInvalidationContext", | |
| "UICollectionViewLayout", | |
| "UICollectionViewLayoutAttributes", | |
| "UICollectionViewLayoutInvalidationContext", | |
| "UICollectionViewTransitionLayout", | |
| "UICollectionViewUpdateItem", | |
| "UICollisionBehavior", | |
| "UICollisionBehaviorDelegate", | |
| "UIColor", | |
| "UIContentContainer", | |
| "UIControl", | |
| "UICoordinateSpace", | |
| "UIDataSourceModelAssociation", | |
| "UIDatePicker", | |
| "UIDevice", | |
| "UIDictationPhrase", | |
| "UIDocument", | |
| "UIDocumentInteractionController", | |
| "UIDocumentInteractionControllerDelegate", | |
| "UIDocumentMenuDelegate", | |
| "UIDocumentMenuViewController", | |
| "UIDocumentPickerDelegate", | |
| "UIDocumentPickerExtensionViewController", | |
| "UIDocumentPickerViewController", | |
| "UIDynamicAnimator", | |
| "UIDynamicAnimatorDelegate", | |
| "UIDynamicBehavior", | |
| "UIDynamicItem", | |
| "UIDynamicItemBehavior", | |
| "UIEvent", | |
| "UIFont", | |
| "UIFontDescriptor", | |
| "UIGestureRecognizer", | |
| "UIGestureRecognizerDelegate", | |
| "UIGravityBehavior", | |
| "UIGuidedAccessRestrictionDelegate", | |
| "UIImage", | |
| "UIImageAsset", | |
| "UIImagePickerController", | |
| "UIImagePickerControllerDelegate", | |
| "UIImageView", | |
| "UIInputView", | |
| "UIInputViewAudioFeedback", | |
| "UIInputViewController", | |
| "UIInterpolatingMotionEffect", | |
| "UIKeyCommand", | |
| "UIKeyInput", | |
| "UILabel", | |
| "UILayoutSupport", | |
| "UILexicon", | |
| "UILexiconEntry", | |
| "UILocalNotification", | |
| "UILocalizedIndexedCollation", | |
| "UILongPressGestureRecognizer", | |
| "UIManagedDocument", | |
| "UIMarkupTextPrintFormatter", | |
| "UIMenuController", | |
| "UIMenuItem", | |
| "UIMotionEffect", | |
| "UIMotionEffectGroup", | |
| "UIMutableUserNotificationAction", | |
| "UIMutableUserNotificationCategory", | |
| "UINavigationBar", | |
| "UINavigationBarDelegate", | |
| "UINavigationController", | |
| "UINavigationControllerDelegate", | |
| "UINavigationItem", | |
| "UINib", | |
| "UIObjectRestoration", | |
| "UIPageControl", | |
| "UIPageViewController", | |
| "UIPageViewControllerDataSource", | |
| "UIPageViewControllerDelegate", | |
| "UIPanGestureRecognizer", | |
| "UIPasteboard", | |
| "UIPercentDrivenInteractiveTransition", | |
| "UIPickerView", | |
| "UIPickerViewAccessibilityDelegate", | |
| "UIPickerViewDataSource", | |
| "UIPickerViewDelegate", | |
| "UIPinchGestureRecognizer", | |
| "UIPopoverBackgroundView", | |
| "UIPopoverBackgroundViewMethods", | |
| "UIPopoverController", | |
| "UIPopoverControllerDelegate", | |
| "UIPopoverPresentationController", | |
| "UIPopoverPresentationControllerDelegate", | |
| "UIPresentationController", | |
| "UIPrintFormatter", | |
| "UIPrintInfo", | |
| "UIPrintInteractionController", | |
| "UIPrintInteractionControllerDelegate", | |
| "UIPrintPageRenderer", | |
| "UIPrintPaper", | |
| "UIPrinter", | |
| "UIPrinterPickerController", | |
| "UIPrinterPickerControllerDelegate", | |
| "UIProgressView", | |
| "UIPushBehavior", | |
| "UIReferenceLibraryViewController", | |
| "UIRefreshControl", | |
| "UIResponder", | |
| "UIRotationGestureRecognizer", | |
| "UIScreen", | |
| "UIScreenEdgePanGestureRecognizer", | |
| "UIScreenMode", | |
| "UIScrollView", | |
| "UIScrollViewAccessibilityDelegate", | |
| "UIScrollViewDelegate", | |
| "UISearchBar", | |
| "UISearchBarDelegate", | |
| "UISearchController", | |
| "UISearchControllerDelegate", | |
| "UISearchDisplayController", | |
| "UISearchDisplayDelegate", | |
| "UISearchResultsUpdating", | |
| "UISegmentedControl", | |
| "UISimpleTextPrintFormatter", | |
| "UISlider", | |
| "UISnapBehavior", | |
| "UISplitViewController", | |
| "UISplitViewControllerDelegate", | |
| "UIStateRestoring", | |
| "UIStepper", | |
| "UIStoryboard", | |
| "UIStoryboardPopoverSegue", | |
| "UIStoryboardSegue", | |
| "UISwipeGestureRecognizer", | |
| "UISwitch", | |
| "UITabBar", | |
| "UITabBarController", | |
| "UITabBarControllerDelegate", | |
| "UITabBarDelegate", | |
| "UITabBarItem", | |
| "UITableView", | |
| "UITableViewCell", | |
| "UITableViewController", | |
| "UITableViewDataSource", | |
| "UITableViewDelegate", | |
| "UITableViewHeaderFooterView", | |
| "UITableViewRowAction", | |
| "UITapGestureRecognizer", | |
| "UITextChecker", | |
| "UITextDocumentProxy", | |
| "UITextField", | |
| "UITextFieldDelegate", | |
| "UITextInput", | |
| "UITextInputDelegate", | |
| "UITextInputMode", | |
| "UITextInputStringTokenizer", | |
| "UITextInputTokenizer", | |
| "UITextInputTraits", | |
| "UITextRange", | |
| "UITextSelectionRect", | |
| "UITextView", | |
| "UITextViewDelegate", | |
| "UIToolbar", | |
| "UITouch", | |
| "UITraitCollection", | |
| "UITraitEnvironment", | |
| "UIUserNotificationAction", | |
| "UIUserNotificationCategory", | |
| "UIUserNotificationSettings", | |
| "UIVibrancyEffect", | |
| "UIVideoEditorController", | |
| "UIVideoEditorControllerDelegate", | |
| "UIView", | |
| "UIViewController", | |
| "UIViewControllerAnimatedTransitioning", | |
| "UIViewControllerContextTransitioning", | |
| "UIViewControllerInteractiveTransitioning", | |
| "UIViewControllerRestoration", | |
| "UIViewControllerTransitionCoordinator", | |
| "UIViewControllerTransitionCoordinatorContext", | |
| "UIViewControllerTransitioningDelegate", | |
| "UIViewPrintFormatter", | |
| "UIVisualEffectView", | |
| "UIWebView", | |
| "UIWebViewDelegate", | |
| "UIWindow", | |
| "WKAccessibilityImageRegion", | |
| "WKBackForwardList", | |
| "WKBackForwardListItem", | |
| "WKFrameInfo", | |
| "WKInterfaceButton", | |
| "WKInterfaceController", | |
| "WKInterfaceDate", | |
| "WKInterfaceDevice", | |
| "WKInterfaceGroup", | |
| "WKInterfaceImage", | |
| "WKInterfaceLabel", | |
| "WKInterfaceMap", | |
| "WKInterfaceObject", | |
| "WKInterfaceSeparator", | |
| "WKInterfaceSlider", | |
| "WKInterfaceSwitch", | |
| "WKInterfaceTable", | |
| "WKInterfaceTimer", | |
| "WKNavigationAction", | |
| "WKNavigationDelegate", | |
| "WKNavigationResponse", | |
| "WKPreferences", | |
| "WKScriptMessage", | |
| "WKScriptMessageHandler", | |
| "WKUIDelegate", | |
| "WKUserContentController", | |
| "WKUserNotificationInterfaceController", | |
| "WKUserScript", | |
| "WKWebView", | |
| "WKWebViewConfiguration", | |
| "WKWindowFeatures", | |
| ]) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment