yum-mirror/VkFFT
git clone https://git.yummers.dev/yum-mirror/VkFFT
ba7001c
master
1//------------------------------------------------------------------------------------------------------------------------------------------------------------- 2// 3// Foundation/NSPrivate.hpp 4// 5// Copyright 2020-2021 Apple Inc. 6// 7// Licensed under the Apache License, Version 2.0 (the "License"); 8// you may not use this file except in compliance with the License. 9// You may obtain a copy of the License at 10// 11// http://www.apache.org/licenses/LICENSE-2.0 12// 13// Unless required by applicable law or agreed to in writing, software 14// distributed under the License is distributed on an "AS IS" BASIS, 15// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16// See the License for the specific language governing permissions and 17// limitations under the License. 18// 19//------------------------------------------------------------------------------------------------------------------------------------------------------------- 20 21#pragma once 22 23//------------------------------------------------------------------------------------------------------------------------------------------------------------- 24 25#include <objc/runtime.h> 26 27//------------------------------------------------------------------------------------------------------------------------------------------------------------- 28 29#define _NS_PRIVATE_CLS (symbol ) (Private::Class::s_k##symbol) 30#define _NS_PRIVATE_SEL (accessor ) (Private::Selector::s_k##accessor) 31 32//------------------------------------------------------------------------------------------------------------------------------------------------------------- 33 34#if defined(NS_PRIVATE_IMPLEMENTATION ) 35 36#define _NS_PRIVATE_VISIBILITY __attribute__((visibility("default"))) 37#define _NS_PRIVATE_IMPORT __attribute__((weak_import)) 38 39#if __OBJC__ 40#define _NS_PRIVATE_OBJC_LOOKUP_CLASS (symbol ) ((__bridge void*)objc_lookUpClass(#symbol)) 41#else 42#define _NS_PRIVATE_OBJC_LOOKUP_CLASS (symbol ) objc_lookUpClass(#symbol) 43#endif // __OBJC__ 44 45#define _NS_PRIVATE_DEF_CLS (symbol ) void* s_k##symbol _NS_PRIVATE_VISIBILITY = _NS_PRIVATE_OBJC_LOOKUP_CLASS(symbol); 46#define _NS_PRIVATE_DEF_PRO (symbol ) 47#define _NS_PRIVATE_DEF_SEL (accessor ,symbol ) SEL s_k##accessor _NS_PRIVATE_VISIBILITY = sel_registerName(symbol); 48#define _NS_PRIVATE_DEF_CONST (type ,symbol ) \ 49 _NS_EXTERN type const NS##symbol _NS_PRIVATE_IMPORT; \ 50 type const NS::symbol = (nullptr != &NS##symbol) ? NS##symbol : nullptr; 51 52#else 53 54#define _NS_PRIVATE_DEF_CLS (symbol ) extern void* s_k##symbol; 55#define _NS_PRIVATE_DEF_PRO (symbol ) 56#define _NS_PRIVATE_DEF_SEL (accessor ,symbol ) extern SEL s_k##accessor; 57#define _NS_PRIVATE_DEF_CONST (type ,symbol ) 58 59#endif // NS_PRIVATE_IMPLEMENTATION 60 61//------------------------------------------------------------------------------------------------------------------------------------------------------------- 62 63namespace NS 64{ 65namespace Private 66{ 67namespace Class 68 { 69 70_NS_PRIVATE_DEF_CLS (NSArray ); 71_NS_PRIVATE_DEF_CLS (NSAutoreleasePool ); 72_NS_PRIVATE_DEF_CLS (NSBundle ); 73_NS_PRIVATE_DEF_CLS (NSCondition ); 74_NS_PRIVATE_DEF_CLS (NSDate ); 75_NS_PRIVATE_DEF_CLS (NSDictionary ); 76_NS_PRIVATE_DEF_CLS (NSError ); 77_NS_PRIVATE_DEF_CLS (NSNumber ); 78_NS_PRIVATE_DEF_CLS (NSObject ); 79_NS_PRIVATE_DEF_CLS (NSProcessInfo ); 80_NS_PRIVATE_DEF_CLS (NSString ); 81_NS_PRIVATE_DEF_CLS (NSURL ); 82_NS_PRIVATE_DEF_CLS (NSValue ); 83 84 }// Class 85}// Private 86}// MTL 87 88//------------------------------------------------------------------------------------------------------------------------------------------------------------- 89 90namespace NS 91{ 92namespace Private 93{ 94namespace Protocol 95 { 96 97 }// Protocol 98}// Private 99}// NS 100 101//------------------------------------------------------------------------------------------------------------------------------------------------------------- 102 103namespace NS 104{ 105namespace Private 106{ 107namespace Selector 108 { 109 110_NS_PRIVATE_DEF_SEL (addObject_ , 111"addObject:" ); 112_NS_PRIVATE_DEF_SEL (activeProcessorCount , 113"activeProcessorCount" ); 114_NS_PRIVATE_DEF_SEL (allBundles , 115"allBundles" ); 116_NS_PRIVATE_DEF_SEL (allFrameworks , 117"allFrameworks" ); 118_NS_PRIVATE_DEF_SEL (allObjects , 119"allObjects" ); 120_NS_PRIVATE_DEF_SEL (alloc , 121"alloc" ); 122_NS_PRIVATE_DEF_SEL (appStoreReceiptURL , 123"appStoreReceiptURL" ); 124_NS_PRIVATE_DEF_SEL (arguments , 125"arguments" ); 126_NS_PRIVATE_DEF_SEL (array , 127"array" ); 128_NS_PRIVATE_DEF_SEL (arrayWithObject_ , 129"arrayWithObject:" ); 130_NS_PRIVATE_DEF_SEL (arrayWithObjects_count_ , 131"arrayWithObjects:count:" ); 132_NS_PRIVATE_DEF_SEL (automaticTerminationSupportEnabled , 133"automaticTerminationSupportEnabled" ); 134_NS_PRIVATE_DEF_SEL (autorelease , 135"autorelease" ); 136_NS_PRIVATE_DEF_SEL (beginActivityWithOptions_reason_ , 137"beginActivityWithOptions:reason:" ); 138_NS_PRIVATE_DEF_SEL (boolValue , 139"boolValue" ); 140_NS_PRIVATE_DEF_SEL (broadcast , 141"broadcast" ); 142_NS_PRIVATE_DEF_SEL (builtInPlugInsPath , 143"builtInPlugInsPath" ); 144_NS_PRIVATE_DEF_SEL (builtInPlugInsURL , 145"builtInPlugInsURL" ); 146_NS_PRIVATE_DEF_SEL (bundleIdentifier , 147"bundleIdentifier" ); 148_NS_PRIVATE_DEF_SEL (bundlePath , 149"bundlePath" ); 150_NS_PRIVATE_DEF_SEL (bundleURL , 151"bundleURL" ); 152_NS_PRIVATE_DEF_SEL (bundleWithPath_ , 153"bundleWithPath:" ); 154_NS_PRIVATE_DEF_SEL (bundleWithURL_ , 155"bundleWithURL:" ); 156_NS_PRIVATE_DEF_SEL (characterAtIndex_ , 157"characterAtIndex:" ); 158_NS_PRIVATE_DEF_SEL (charValue , 159"charValue" ); 160_NS_PRIVATE_DEF_SEL (countByEnumeratingWithState_objects_count_ , 161"countByEnumeratingWithState:objects:count:" ); 162_NS_PRIVATE_DEF_SEL (cStringUsingEncoding_ , 163"cStringUsingEncoding:" ); 164_NS_PRIVATE_DEF_SEL (code , 165"code" ); 166_NS_PRIVATE_DEF_SEL (compare_ , 167"compare:" ); 168_NS_PRIVATE_DEF_SEL (copy , 169"copy" ); 170_NS_PRIVATE_DEF_SEL (count , 171"count" ); 172_NS_PRIVATE_DEF_SEL (dateWithTimeIntervalSinceNow_ , 173"dateWithTimeIntervalSinceNow:" ); 174_NS_PRIVATE_DEF_SEL (descriptionWithLocale_ , 175"descriptionWithLocale:" ); 176_NS_PRIVATE_DEF_SEL (disableAutomaticTermination_ , 177"disableAutomaticTermination:" ); 178_NS_PRIVATE_DEF_SEL (disableSuddenTermination , 179"disableSuddenTermination" ); 180_NS_PRIVATE_DEF_SEL (debugDescription , 181"debugDescription" ); 182_NS_PRIVATE_DEF_SEL (description , 183"description" ); 184_NS_PRIVATE_DEF_SEL (dictionary , 185"dictionary" ); 186_NS_PRIVATE_DEF_SEL (dictionaryWithObject_forKey_ , 187"dictionaryWithObject:forKey:" ); 188_NS_PRIVATE_DEF_SEL (dictionaryWithObjects_forKeys_count_ , 189"dictionaryWithObjects:forKeys:count:" ); 190_NS_PRIVATE_DEF_SEL (domain , 191"domain" ); 192_NS_PRIVATE_DEF_SEL (doubleValue , 193"doubleValue" ); 194_NS_PRIVATE_DEF_SEL (drain , 195"drain" ); 196_NS_PRIVATE_DEF_SEL (enableAutomaticTermination_ , 197"enableAutomaticTermination:" ); 198_NS_PRIVATE_DEF_SEL (enableSuddenTermination , 199"enableSuddenTermination" ); 200_NS_PRIVATE_DEF_SEL (endActivity_ , 201"endActivity:" ); 202_NS_PRIVATE_DEF_SEL (environment , 203"environment" ); 204_NS_PRIVATE_DEF_SEL (errorWithDomain_code_userInfo_ , 205"errorWithDomain:code:userInfo:" ); 206_NS_PRIVATE_DEF_SEL (executablePath , 207"executablePath" ); 208_NS_PRIVATE_DEF_SEL (executableURL , 209"executableURL" ); 210_NS_PRIVATE_DEF_SEL (fileSystemRepresentation , 211"fileSystemRepresentation" ); 212_NS_PRIVATE_DEF_SEL (fileURLWithPath_ , 213"fileURLWithPath:" ); 214_NS_PRIVATE_DEF_SEL (floatValue , 215"floatValue" ); 216_NS_PRIVATE_DEF_SEL (fullUserName , 217"fullUserName" ); 218_NS_PRIVATE_DEF_SEL (getValue_size_ , 219"getValue:size:" ); 220_NS_PRIVATE_DEF_SEL (globallyUniqueString , 221"globallyUniqueString" ); 222_NS_PRIVATE_DEF_SEL (hash , 223"hash" ); 224_NS_PRIVATE_DEF_SEL (hostName , 225"hostName" ); 226_NS_PRIVATE_DEF_SEL (infoDictionary , 227"infoDictionary" ); 228_NS_PRIVATE_DEF_SEL (init , 229"init" ); 230_NS_PRIVATE_DEF_SEL (initFileURLWithPath_ , 231"initFileURLWithPath:" ); 232_NS_PRIVATE_DEF_SEL (initWithBool_ , 233"initWithBool:" ); 234_NS_PRIVATE_DEF_SEL (initWithBytes_objCType_ , 235"initWithBytes:objCType:" ); 236_NS_PRIVATE_DEF_SEL (initWithBytesNoCopy_length_encoding_freeWhenDone_ , 237"initWithBytesNoCopy:length:encoding:freeWhenDone:" ); 238_NS_PRIVATE_DEF_SEL (initWithChar_ , 239"initWithChar:" ); 240_NS_PRIVATE_DEF_SEL (initWithCoder_ , 241"initWithCoder:" ); 242_NS_PRIVATE_DEF_SEL (initWithCString_encoding_ , 243"initWithCString:encoding:" ); 244_NS_PRIVATE_DEF_SEL (initWithDomain_code_userInfo_ , 245"initWithDomain:code:userInfo:" ); 246_NS_PRIVATE_DEF_SEL (initWithDouble_ , 247"initWithDouble:" ); 248_NS_PRIVATE_DEF_SEL (initWithFloat_ , 249"initWithFloat:" ); 250_NS_PRIVATE_DEF_SEL (initWithInt_ , 251"initWithInt:" ); 252_NS_PRIVATE_DEF_SEL (initWithLong_ , 253"initWithLong:" ); 254_NS_PRIVATE_DEF_SEL (initWithLongLong_ , 255"initWithLongLong:" ); 256_NS_PRIVATE_DEF_SEL (initWithObjects_count_ , 257"initWithObjects:count:" ); 258_NS_PRIVATE_DEF_SEL (initWithObjects_forKeys_count_ , 259"initWithObjects:forKeys:count:" ); 260_NS_PRIVATE_DEF_SEL (initWithPath_ , 261"initWithPath:" ); 262_NS_PRIVATE_DEF_SEL (initWithShort_ , 263"initWithShort:" ); 264_NS_PRIVATE_DEF_SEL (initWithString_ , 265"initWithString:" ); 266_NS_PRIVATE_DEF_SEL (initWithUnsignedChar_ , 267"initWithUnsignedChar:" ); 268_NS_PRIVATE_DEF_SEL (initWithUnsignedInt_ , 269"initWithUnsignedInt:" ); 270_NS_PRIVATE_DEF_SEL (initWithUnsignedLong_ , 271"initWithUnsignedLong:" ); 272_NS_PRIVATE_DEF_SEL (initWithUnsignedLongLong_ , 273"initWithUnsignedLongLong:" ); 274_NS_PRIVATE_DEF_SEL (initWithUnsignedShort_ , 275"initWithUnsignedShort:" ); 276_NS_PRIVATE_DEF_SEL (initWithURL_ , 277"initWithURL:" ); 278_NS_PRIVATE_DEF_SEL (integerValue , 279"integerValue" ); 280_NS_PRIVATE_DEF_SEL (intValue , 281"intValue" ); 282_NS_PRIVATE_DEF_SEL (isEqual_ , 283"isEqual:" ); 284_NS_PRIVATE_DEF_SEL (isEqualToNumber_ , 285"isEqualToNumber:" ); 286_NS_PRIVATE_DEF_SEL (isEqualToString_ , 287"isEqualToString:" ); 288_NS_PRIVATE_DEF_SEL (isEqualToValue_ , 289"isEqualToValue:" ); 290_NS_PRIVATE_DEF_SEL (isiOSAppOnMac , 291"isiOSAppOnMac" ); 292_NS_PRIVATE_DEF_SEL (isLoaded , 293"isLoaded" ); 294_NS_PRIVATE_DEF_SEL (isLowPowerModeEnabled , 295"isLowPowerModeEnabled" ); 296_NS_PRIVATE_DEF_SEL (isMacCatalystApp , 297"isMacCatalystApp" ); 298_NS_PRIVATE_DEF_SEL (isOperatingSystemAtLeastVersion_ , 299"isOperatingSystemAtLeastVersion:" ); 300_NS_PRIVATE_DEF_SEL (keyEnumerator , 301"keyEnumerator" ); 302_NS_PRIVATE_DEF_SEL (length , 303"length" ); 304_NS_PRIVATE_DEF_SEL (lengthOfBytesUsingEncoding_ , 305"lengthOfBytesUsingEncoding:" ); 306_NS_PRIVATE_DEF_SEL (load , 307"load" ); 308_NS_PRIVATE_DEF_SEL (loadAndReturnError_ , 309"loadAndReturnError:" ); 310_NS_PRIVATE_DEF_SEL (localizedDescription , 311"localizedDescription" ); 312_NS_PRIVATE_DEF_SEL (localizedFailureReason , 313"localizedFailureReason" ); 314_NS_PRIVATE_DEF_SEL (localizedInfoDictionary , 315"localizedInfoDictionary" ); 316_NS_PRIVATE_DEF_SEL (localizedRecoveryOptions , 317"localizedRecoveryOptions" ); 318_NS_PRIVATE_DEF_SEL (localizedRecoverySuggestion , 319"localizedRecoverySuggestion" ); 320_NS_PRIVATE_DEF_SEL (localizedStringForKey_value_table_ , 321"localizedStringForKey:value:table:" ); 322_NS_PRIVATE_DEF_SEL (lock , 323"lock" ); 324_NS_PRIVATE_DEF_SEL (longValue , 325"longValue" ); 326_NS_PRIVATE_DEF_SEL (longLongValue , 327"longLongValue" ); 328_NS_PRIVATE_DEF_SEL (mainBundle , 329"mainBundle" ); 330_NS_PRIVATE_DEF_SEL (maximumLengthOfBytesUsingEncoding_ , 331"maximumLengthOfBytesUsingEncoding:" ); 332_NS_PRIVATE_DEF_SEL (methodSignatureForSelector_ , 333"methodSignatureForSelector:" ); 334_NS_PRIVATE_DEF_SEL (mutableBytes , 335"mutableBytes" ); 336_NS_PRIVATE_DEF_SEL (name , 337"name" ); 338_NS_PRIVATE_DEF_SEL (nextObject , 339"nextObject" ); 340_NS_PRIVATE_DEF_SEL (numberWithBool_ , 341"numberWithBool:" ); 342_NS_PRIVATE_DEF_SEL (numberWithChar_ , 343"numberWithChar:" ); 344_NS_PRIVATE_DEF_SEL (numberWithDouble_ , 345"numberWithDouble:" ); 346_NS_PRIVATE_DEF_SEL (numberWithFloat_ , 347"numberWithFloat:" ); 348_NS_PRIVATE_DEF_SEL (numberWithInt_ , 349"numberWithInt:" ); 350_NS_PRIVATE_DEF_SEL (numberWithLong_ , 351"numberWithLong:" ); 352_NS_PRIVATE_DEF_SEL (numberWithLongLong_ , 353"numberWithLongLong:" ); 354_NS_PRIVATE_DEF_SEL (numberWithShort_ , 355"numberWithShort:" ); 356_NS_PRIVATE_DEF_SEL (numberWithUnsignedChar_ , 357"numberWithUnsignedChar:" ); 358_NS_PRIVATE_DEF_SEL (numberWithUnsignedInt_ , 359"numberWithUnsignedInt:" ); 360_NS_PRIVATE_DEF_SEL (numberWithUnsignedLong_ , 361"numberWithUnsignedLong:" ); 362_NS_PRIVATE_DEF_SEL (numberWithUnsignedLongLong_ , 363"numberWithUnsignedLongLong:" ); 364_NS_PRIVATE_DEF_SEL (numberWithUnsignedShort_ , 365"numberWithUnsignedShort:" ); 366_NS_PRIVATE_DEF_SEL (objCType , 367"objCType" ); 368_NS_PRIVATE_DEF_SEL (object , 369"object" ); 370_NS_PRIVATE_DEF_SEL (objectAtIndex_ , 371"objectAtIndex:" ); 372_NS_PRIVATE_DEF_SEL (objectForInfoDictionaryKey_ , 373"objectForInfoDictionaryKey:" ); 374_NS_PRIVATE_DEF_SEL (objectForKey_ , 375"objectForKey:" ); 376_NS_PRIVATE_DEF_SEL (operatingSystem , 377"operatingSystem" ); 378_NS_PRIVATE_DEF_SEL (operatingSystemVersion , 379"operatingSystemVersion" ); 380_NS_PRIVATE_DEF_SEL (operatingSystemVersionString , 381"operatingSystemVersionString" ); 382_NS_PRIVATE_DEF_SEL (pathForAuxiliaryExecutable_ , 383"pathForAuxiliaryExecutable:" ); 384_NS_PRIVATE_DEF_SEL (performActivityWithOptions_reason_usingBlock_ , 385"performActivityWithOptions:reason:usingBlock:" ); 386_NS_PRIVATE_DEF_SEL (performExpiringActivityWithReason_usingBlock_ , 387"performExpiringActivityWithReason:usingBlock:" ); 388_NS_PRIVATE_DEF_SEL (physicalMemory , 389"physicalMemory" ); 390_NS_PRIVATE_DEF_SEL (pointerValue , 391"pointerValue" ); 392_NS_PRIVATE_DEF_SEL (preflightAndReturnError_ , 393"preflightAndReturnError:" ); 394_NS_PRIVATE_DEF_SEL (privateFrameworksPath , 395"privateFrameworksPath" ); 396_NS_PRIVATE_DEF_SEL (privateFrameworksURL , 397"privateFrameworksURL" ); 398_NS_PRIVATE_DEF_SEL (processIdentifier , 399"processIdentifier" ); 400_NS_PRIVATE_DEF_SEL (processInfo , 401"processInfo" ); 402_NS_PRIVATE_DEF_SEL (processName , 403"processName" ); 404_NS_PRIVATE_DEF_SEL (processorCount , 405"processorCount" ); 406_NS_PRIVATE_DEF_SEL (rangeOfString_options_ , 407"rangeOfString:options:" ); 408_NS_PRIVATE_DEF_SEL (release , 409"release" ); 410_NS_PRIVATE_DEF_SEL (resourcePath , 411"resourcePath" ); 412_NS_PRIVATE_DEF_SEL (resourceURL , 413"resourceURL" ); 414_NS_PRIVATE_DEF_SEL (respondsToSelector_ , 415"respondsToSelector:" ); 416_NS_PRIVATE_DEF_SEL (retain , 417"retain" ); 418_NS_PRIVATE_DEF_SEL (retainCount , 419"retainCount" ); 420_NS_PRIVATE_DEF_SEL (setAutomaticTerminationSupportEnabled_ , 421"setAutomaticTerminationSupportEnabled:" ); 422_NS_PRIVATE_DEF_SEL (setProcessName_ , 423"setProcessName:" ); 424_NS_PRIVATE_DEF_SEL (sharedFrameworksPath , 425"sharedFrameworksPath" ); 426_NS_PRIVATE_DEF_SEL (sharedFrameworksURL , 427"sharedFrameworksURL" ); 428_NS_PRIVATE_DEF_SEL (sharedSupportPath , 429"sharedSupportPath" ); 430_NS_PRIVATE_DEF_SEL (sharedSupportURL , 431"sharedSupportURL" ); 432_NS_PRIVATE_DEF_SEL (shortValue , 433"shortValue" ); 434_NS_PRIVATE_DEF_SEL (showPools , 435"showPools" ); 436_NS_PRIVATE_DEF_SEL (signal , 437"signal" ); 438_NS_PRIVATE_DEF_SEL (string , 439"string" ); 440_NS_PRIVATE_DEF_SEL (stringValue , 441"stringValue" ); 442_NS_PRIVATE_DEF_SEL (stringWithString_ , 443"stringWithString:" ); 444_NS_PRIVATE_DEF_SEL (stringWithCString_encoding_ , 445"stringWithCString:encoding:" ); 446_NS_PRIVATE_DEF_SEL (stringByAppendingString_ , 447"stringByAppendingString:" ); 448_NS_PRIVATE_DEF_SEL (systemUptime , 449"systemUptime" ); 450_NS_PRIVATE_DEF_SEL (thermalState , 451"thermalState" ); 452_NS_PRIVATE_DEF_SEL (unload , 453"unload" ); 454_NS_PRIVATE_DEF_SEL (unlock , 455"unlock" ); 456_NS_PRIVATE_DEF_SEL (unsignedCharValue , 457"unsignedCharValue" ); 458_NS_PRIVATE_DEF_SEL (unsignedIntegerValue , 459"unsignedIntegerValue" ); 460_NS_PRIVATE_DEF_SEL (unsignedIntValue , 461"unsignedIntValue" ); 462_NS_PRIVATE_DEF_SEL (unsignedLongValue , 463"unsignedLongValue" ); 464_NS_PRIVATE_DEF_SEL (unsignedLongLongValue , 465"unsignedLongLongValue" ); 466_NS_PRIVATE_DEF_SEL (unsignedShortValue , 467"unsignedShortValue" ); 468_NS_PRIVATE_DEF_SEL (URLForAuxiliaryExecutable_ , 469"URLForAuxiliaryExecutable:" ); 470_NS_PRIVATE_DEF_SEL (userInfo , 471"userInfo" ); 472_NS_PRIVATE_DEF_SEL (userName , 473"userName" ); 474_NS_PRIVATE_DEF_SEL (UTF8String , 475"UTF8String" ); 476_NS_PRIVATE_DEF_SEL (valueWithBytes_objCType_ , 477"valueWithBytes:objCType:" ); 478_NS_PRIVATE_DEF_SEL (valueWithPointer_ , 479"valueWithPointer:" ); 480_NS_PRIVATE_DEF_SEL (wait , 481"wait" ); 482_NS_PRIVATE_DEF_SEL (waitUntilDate_ , 483"waitUntilDate:" ); 484 }// Class 485}// Private 486}// MTL 487 488//-------------------------------------------------------------------------------------------------------------------------------------------------------------