framework = "Foundation"
crate = "objc2-foundation"
required-dependencies = []
custom-lib-rs = true
macos = "10.0"
maccatalyst = "13.0"
ios = "2.0"
tvos = "9.0"
watchos = "2.0"
visionos = "1.0"
gnustep = true
fn.CFBridgingRelease.skipped = true
fn.NSMakeCollectable.skipped = true
fn.NSFreeMapTable.skipped = true
protocol.NSKeyedUnarchiverDelegate.methods."unarchiver:didDecodeObject:".skipped = true
class.NSObject.methods."awakeAfterUsingCoder:".skipped = true
class.NSNetService.methods."getInputStream:outputStream:".skipped = true
class.NSPropertyListSerialization.methods."dataFromPropertyList:format:errorDescription:".skipped = true
class.NSPropertyListSerialization.methods."propertyListFromData:mutabilityOption:format:errorDescription:".skipped = true
class.NSBlockOperation.methods.executionBlocks.skipped = true
class.NSItemProvider.methods."registerObjectOfClass:visibility:loadHandler:".skipped = true
class.NSItemProvider.methods."canLoadObjectOfClass:".skipped = true
class.NSItemProvider.methods."loadObjectOfClass:completionHandler:".skipped = true
class.NSJSONSerialization.methods."writeJSONObject:toStream:options:error:".skipped = true
class.NSPropertyListSerialization.methods."writePropertyList:toStream:format:options:error:".skipped = true
class.NSBundle.methods."localizedAttributedStringForKey:value:table:".skipped = true
class.NSProxy.skipped = true
typedef.NSZone.skipped = true
struct.NSDecimal.skipped = true
struct.NSFastEnumerationState.skipped = true
class.NSAttributedString.derives = "PartialEq, Eq, Hash"
class.NSBundle.derives = "PartialEq, Eq, Hash"
class.NSThread.derives = "PartialEq, Eq, Hash"
class.NSMutableData.derives = "PartialEq, Eq, Hash"
class.NSMutableAttributedString.derives = "PartialEq, Eq, Hash"
class.NSMutableString.derives = "PartialEq, Eq, Hash"
class.NSData.derives = "PartialEq, Eq, Hash"
class.NSError.derives = "PartialEq, Eq, Hash"
class.NSException.derives = "PartialEq, Eq, Hash"
class.NSProcessInfo.derives = "PartialEq, Eq, Hash"
class.NSString.derives = "PartialEq, Eq, Hash"
class.NSUUID.derives = "PartialEq, Eq, Hash"
class.NSValue.derives = ""
class.NSNumber.derives = ""
class.NSDecimalNumber.derives = "Debug, PartialEq, Hash"
class.NSValue.methods.init.skipped = true
class.NSValue.methods.new.skipped = true
class.NSNumber.methods.init.skipped = true
class.NSNumber.methods.new.skipped = true
class.NSSimpleCString.skipped-protocols = ["NSCopying", "NSMutableCopying"]
class.NSConstantString.skipped-protocols = ["NSCopying", "NSMutableCopying"]
class.NSPurgeableData.skipped-protocols = ["NSCopying", "NSMutableCopying"]
struct._NSRange.skipped = true
typedef.NSRange.skipped = true
enum.NSComparisonResult.skipped = true
typedef.NSPoint.skipped = true
struct.NSPoint.skipped = true
typedef.NSSize.skipped = true
struct.NSSize.skipped = true
typedef.NSRect.skipped = true
struct.NSRect.skipped = true
enum.NSRectEdge.skipped = true
enum.anonymous.constants.NSRectEdgeMinX.skipped = true
enum.anonymous.constants.NSRectEdgeMinY.skipped = true
enum.anonymous.constants.NSRectEdgeMaxX.skipped = true
enum.anonymous.constants.NSRectEdgeMaxY.skipped = true
enum.anonymous.constants.NSMinXEdge.skipped = true
enum.anonymous.constants.NSMinYEdge.skipped = true
enum.anonymous.constants.NSMaxXEdge.skipped = true
enum.anonymous.constants.NSMaxYEdge.skipped = true
protocol.NSCopying.skipped = true
protocol.NSMutableCopying.skipped = true
class.NSException.methods.raise.skipped = true
class.NSData.methods.bytes.skipped = true
class.NSMutableData.methods.length.skipped = true
class.NSError.methods.new.skipped = true
class.NSException.methods.new.skipped = true
class.NSUUID.methods."initWithUUIDBytes:".skipped = true
class.NSUUID.methods."getUUIDBytes:".skipped = true
class.NSMutableData.methods.mutableBytes.skipped = true
class.NSArray.definition-skipped = true
class.NSMutableArray.definition-skipped = true
class.NSDictionary.definition-skipped = true
class.NSMutableDictionary.definition-skipped = true
class.NSSet.definition-skipped = true
class.NSMutableSet.definition-skipped = true
class.NSCountedSet.definition-skipped = true
class.NSOrderedSet.definition-skipped = true
class.NSMutableOrderedSet.definition-skipped = true
class.NSEnumerator.definition-skipped = true
class.NSAttributedString.methods."initWithFormat:options:locale:arguments:".skipped = true
class.NSException.methods."raise:format:arguments:".skipped = true
class.NSExpression.methods."expressionWithFormat:arguments:".skipped = true
class.NSPredicate.methods."predicateWithFormat:arguments:".skipped = true
class.NSString.methods."initWithFormat:arguments:".skipped = true
class.NSString.methods."initWithFormat:locale:arguments:".skipped = true
class.NSString.methods."initWithValidatedFormat:validFormatSpecifiers:arguments:error:".skipped = true
class.NSString.methods."initWithValidatedFormat:validFormatSpecifiers:locale:arguments:error:".skipped = true
class.NSAttributedString.methods."initWithFormat:options:locale:context:arguments:".skipped = true
class.NSMutableAttributedString.methods."initWithFormat:options:locale:context:arguments:".skipped = true
fn.NSLogv.skipped = true
class.NSMutableAttributedString.methods."initWithURL:options:documentAttributes:error:".skipped = true
class.NSMutableAttributedString.methods."initWithData:options:documentAttributes:error:".skipped = true
class.NSMutableAttributedString.methods."initWithRTF:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithRTFD:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithHTML:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithHTML:baseURL:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithDocFormat:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithHTML:options:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithRTFDFileWrapper:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithURL:documentAttributes:".skipped = true
class.NSMutableAttributedString.methods."initWithPath:documentAttributes:".skipped = true
enum.anonymous.constants.NSWrapCalendarComponents.skipped = true
class.NSLocale.methods.init.skipped = true
class.NSLocale.methods.new.skipped = true
class.NSNotification.methods.init.skipped = true
class.NSNotification.methods.new.skipped = true
class.NSUserNotification.methods.contentImage.skipped = true
class.NSUserNotification.methods."setContentImage:".skipped = true
enum.anonymous.constants.NSProprietaryStringEncoding.skipped = true
class.NSDictionary.methods."initWithContentsOfURL:error:".skipped = true
class.NSDictionary.methods."dictionaryWithContentsOfURL:error:".skipped = true
class.NSDictionary.categories.NSGenericFastEnumeration.skipped = true
fn.CFBridgingRetain.skipped = true
class.NSRunLoop.methods.getCFRunLoop.skipped = true
enum.NSAppleEventSendOptions.use-value = true
enum.NSCalendarUnit.use-value = true
enum.NSDateFormatterStyle.use-value = true
enum.NSISO8601DateFormatOptions.use-value = true
enum.NSLocaleLanguageDirection.use-value = true
enum.NSNumberFormatterStyle.use-value = true
enum.NSNumberFormatterPadPosition.use-value = true
enum.NSNumberFormatterRoundingMode.use-value = true
enum.NSPropertyListMutabilityOptions.use-value = true
enum.NSPropertyListFormat.use-value = true
enum.anonymous.constants.NS_UnknownByteOrder.skipped = true
enum.anonymous.constants.NS_LittleEndian.skipped = true
enum.anonymous.constants.NS_BigEndian.skipped = true
class.NSAppleEventDescriptor.methods."descriptorWithDescriptorType:bytes:length:".skipped = true
class.NSAppleEventDescriptor.methods."descriptorWithDescriptorType:data:".skipped = true
class.NSAppleEventDescriptor.methods."appleEventWithEventClass:eventID:targetDescriptor:returnID:transactionID:".skipped = true
class.NSAppleEventDescriptor.methods."initWithAEDescNoCopy:".skipped = true
class.NSAppleEventDescriptor.methods."initWithDescriptorType:bytes:length:".skipped = true
class.NSAppleEventDescriptor.methods."initWithDescriptorType:data:".skipped = true
class.NSAppleEventDescriptor.methods."initWithEventClass:eventID:targetDescriptor:returnID:transactionID:".skipped = true
class.NSAppleEventDescriptor.methods."setParamDescriptor:forKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."paramDescriptorForKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."removeParamDescriptorWithKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."setAttributeDescriptor:forKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."attributeDescriptorForKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."sendEventWithOptions:timeout:error:".skipped = true
class.NSAppleEventDescriptor.methods."setDescriptor:forKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."descriptorForKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."removeDescriptorWithKeyword:".skipped = true
class.NSAppleEventDescriptor.methods."keywordForDescriptorAtIndex:".skipped = true
class.NSAppleEventDescriptor.methods."coerceToDescriptorType:".skipped = true
class.NSAppleEventDescriptor.methods.aeDesc.skipped = true
class.NSAppleEventDescriptor.methods.descriptorType.skipped = true
class.NSAppleEventDescriptor.methods.eventClass.skipped = true
class.NSAppleEventDescriptor.methods.eventID.skipped = true
class.NSAppleEventDescriptor.methods.returnID.skipped = true
class.NSAppleEventDescriptor.methods.transactionID.skipped = true
class.NSAppleEventManager.methods."setEventHandler:andSelector:forEventClass:andEventID:".skipped = true
class.NSAppleEventManager.methods."removeEventHandlerForEventClass:andEventID:".skipped = true
class.NSAppleEventManager.methods."dispatchRawAppleEvent:withRawReply:handlerRefCon:".skipped = true
class.NSOperationQueue.methods.underlyingQueue.skipped = true
class.NSOperationQueue.methods."setUnderlyingQueue:".skipped = true
class.NSURLCredential.methods."initWithIdentity:certificates:persistence:".skipped = true
class.NSURLCredential.methods."credentialWithIdentity:certificates:persistence:".skipped = true
class.NSURLCredential.methods."initWithTrust:".skipped = true
class.NSURLCredential.methods."credentialForTrust:".skipped = true
class.NSURLCredential.methods.identity.skipped = true
class.NSURLProtectionSpace.methods.serverTrust.skipped = true
class.NSURLSessionConfiguration.methods.TLSMinimumSupportedProtocol.skipped = true
class.NSURLSessionConfiguration.methods."setTLSMinimumSupportedProtocol:".skipped = true
class.NSURLSessionConfiguration.methods.TLSMaximumSupportedProtocol.skipped = true
class.NSURLSessionConfiguration.methods."setTLSMaximumSupportedProtocol:".skipped = true
class.NSURLSessionConfiguration.methods.TLSMinimumSupportedProtocolVersion.skipped = true
class.NSURLSessionConfiguration.methods."setTLSMinimumSupportedProtocolVersion:".skipped = true
class.NSURLSessionConfiguration.methods.TLSMaximumSupportedProtocolVersion.skipped = true
class.NSURLSessionConfiguration.methods."setTLSMaximumSupportedProtocolVersion:".skipped = true
class.NSXPCConnection.methods.auditSessionIdentifier.skipped = true
class.NSXPCInterface.methods."setXPCType:forSelector:argumentIndex:ofReply:".skipped = true
class.NSXPCInterface.methods."XPCTypeForSelector:argumentIndex:ofReply:".skipped = true
class.NSXPCCoder.methods."encodeXPCObject:forKey:".skipped = true
class.NSXPCCoder.methods."decodeXPCObjectOfType:forKey:".skipped = true
class.NSArray.mutability = "ImmutableWithMutableSubclass(Foundation::NSArray::NSMutableArray)"
class.NSMutableArray.mutability = "MutableWithImmutableSuperclass(Foundation::NSArray::NSArray)"
class.NSString.mutability = "ImmutableWithMutableSubclass(Foundation::NSString::NSMutableString)"
class.NSMutableString.mutability = "MutableWithImmutableSuperclass(Foundation::NSString::NSString)"
class.NSAttributedString.mutability = "ImmutableWithMutableSubclass(Foundation::NSAttributedString::NSMutableAttributedString)"
class.NSMutableAttributedString.mutability = "MutableWithImmutableSuperclass(Foundation::NSAttributedString::NSAttributedString)"
class.NSData.mutability = "ImmutableWithMutableSubclass(Foundation::NSData::NSMutableData)"
class.NSMutableData.mutability = "MutableWithImmutableSuperclass(Foundation::NSData::NSData)"
class.NSDictionary.mutability = "ImmutableWithMutableSubclass(Foundation::NSDictionary::NSMutableDictionary)"
class.NSMutableDictionary.mutability = "MutableWithImmutableSuperclass(Foundation::NSDictionary::NSDictionary)"
class.NSSet.mutability = "ImmutableWithMutableSubclass(Foundation::NSSet::NSMutableSet)"
class.NSMutableSet.mutability = "MutableWithImmutableSuperclass(Foundation::NSSet::NSSet)"
class.NSCharacterSet.mutability = "ImmutableWithMutableSubclass(Foundation::NSCharacterSet::NSMutableCharacterSet)"
class.NSMutableCharacterSet.mutability = "MutableWithImmutableSuperclass(Foundation::NSCharacterSet::NSCharacterSet)"
class.NSOrderedSet.mutability = "ImmutableWithMutableSubclass(Foundation::NSOrderedSet::NSMutableOrderedSet)"
class.NSMutableOrderedSet.mutability = "MutableWithImmutableSuperclass(Foundation::NSOrderedSet::NSOrderedSet)"
class.NSIndexSet.mutability = "ImmutableWithMutableSubclass(Foundation::NSIndexSet::NSMutableIndexSet)"
class.NSMutableIndexSet.mutability = "MutableWithImmutableSuperclass(Foundation::NSIndexSet::NSIndexSet)"
class.NSURLRequest.mutability = "ImmutableWithMutableSubclass(Foundation::NSURLRequest::NSMutableURLRequest)"
class.NSMutableURLRequest.mutability = "MutableWithImmutableSuperclass(Foundation::NSURLRequest::NSURLRequest)"
class.NSEnumerator.mutability = "Mutable"
class.NSDirectoryEnumerator.mutability = "Mutable"
class.NSSimpleCString.mutability = "Immutable"
class.NSConstantString.mutability = "Immutable"
class.NSPurgeableData.mutability = "Mutable"
class.NSValue.mutability = "Immutable"
class.NSNumber.mutability = "Immutable"
class.NSDecimalNumber.mutability = "Immutable"
class.NSIndexPath.mutability = "Immutable"
class.NSUUID.mutability = "Immutable"
class.NSArray.methods.init.unsafe = false
class.NSArray.methods.new.unsafe = false
class.NSArray.methods.count.unsafe = false
class.NSMutableArray.methods.init.unsafe = false
class.NSMutableArray.methods.new.unsafe = false
class.NSMutableArray.methods.removeAllObjects.unsafe = false
class.NSString.methods.init.unsafe = false
class.NSString.methods.new.unsafe = false
class.NSString.methods."compare:".unsafe = false
class.NSString.methods."hasPrefix:".unsafe = false
class.NSString.methods."hasSuffix:".unsafe = false
class.NSString.methods."stringByAppendingString:".unsafe = false
class.NSString.methods."stringByAppendingPathComponent:".unsafe = false
class.NSString.methods."lengthOfBytesUsingEncoding:".unsafe = false
class.NSString.methods.length.unsafe = false
class.NSString.methods.UTF8String.unsafe = false
class.NSString.methods."initWithString:".unsafe = false
class.NSString.methods."stringWithString:".unsafe = false
class.NSMutableString.methods.init.unsafe = false
class.NSMutableString.methods.new.unsafe = false
class.NSMutableString.methods."initWithCapacity:".unsafe = false
class.NSMutableString.methods."stringWithCapacity:".unsafe = false
class.NSMutableString.methods."initWithString:".unsafe = false
class.NSMutableString.methods."stringWithString:".unsafe = false
class.NSMutableString.methods."appendString:".unsafe = false
class.NSMutableString.methods."setString:".unsafe = false
class.NSAttributedString.methods.init.unsafe = false
class.NSAttributedString.methods.new.unsafe = false
class.NSAttributedString.methods."initWithString:".unsafe = false
class.NSAttributedString.methods."initWithAttributedString:".unsafe = false
class.NSAttributedString.methods.string.unsafe = false
class.NSAttributedString.methods.length.unsafe = false
class.NSMutableAttributedString.methods.init.unsafe = false
class.NSMutableAttributedString.methods.new.unsafe = false
class.NSMutableAttributedString.methods."initWithString:".unsafe = false
class.NSMutableAttributedString.methods."initWithAttributedString:".unsafe = false
class.NSMutableAttributedString.methods."setAttributedString:".unsafe = false
class.NSBundle.methods.mainBundle.unsafe = false
class.NSBundle.methods.infoDictionary.unsafe = false
class.NSData.methods.init.unsafe = false
class.NSData.methods.new.unsafe = false
class.NSData.methods."initWithData:".unsafe = false
class.NSData.methods."dataWithData:".unsafe = false
class.NSData.methods.length.unsafe = false
class.NSData.methods.bytes.unsafe = false
class.NSMutableData.methods.init.unsafe = false
class.NSMutableData.methods.new.unsafe = false
class.NSMutableData.methods."dataWithData:".unsafe = false
class.NSMutableData.methods."initWithCapacity:".unsafe = false
class.NSMutableData.methods."dataWithCapacity:".unsafe = false
class.NSMutableData.methods."setLength:".unsafe = false
class.NSMutableData.methods.mutableBytes.unsafe = false
class.NSDictionary.methods.init.unsafe = false
class.NSDictionary.methods.new.unsafe = false
class.NSDictionary.methods.count.unsafe = false
class.NSMutableDictionary.methods.init.unsafe = false
class.NSMutableDictionary.methods.new.unsafe = false
class.NSMutableDictionary.methods."removeObjectForKey:".unsafe = false
class.NSMutableDictionary.methods.removeAllObjects.unsafe = false
class.NSEnumerator.methods.nextObject.unsafe = false
class.NSEnumerator.methods.allObjects.unsafe = false
class.NSError.methods.domain.unsafe = false
class.NSError.methods.code.unsafe = false
class.NSError.methods.userInfo.unsafe = false
class.NSError.methods.localizedDescription.unsafe = false
class.NSException.methods.name.unsafe = false
class.NSException.methods.reason.unsafe = false
class.NSException.methods.userInfo.unsafe = false
class.NSLock.methods.init.unsafe = false
class.NSLock.methods.new.unsafe = false
class.NSLock.methods.name.unsafe = false
class.NSLock.methods."setName:".unsafe = false
class.NSUUID.methods.UUID.unsafe = false
class.NSUUID.methods.init.unsafe = false
class.NSUUID.methods.new.unsafe = false
class.NSUUID.methods."initWithUUIDString:".unsafe = false
class.NSUUID.methods.UUIDString.unsafe = false
class.NSThread.methods.init.unsafe = false
class.NSThread.methods.new.unsafe = false
class.NSThread.methods.currentThread.unsafe = false
class.NSThread.methods.mainThread.unsafe = false
class.NSThread.methods.name.unsafe = false
class.NSThread.methods.isMultiThreaded.unsafe = false
class.NSThread.methods.isMainThread.unsafe = false
class.NSProcessInfo.methods.processInfo.unsafe = false
class.NSProcessInfo.methods.processName.unsafe = false
class.NSProcessInfo.methods.operatingSystemVersion.unsafe = false
class.NSSet.methods.init.unsafe = false
class.NSSet.methods.new.unsafe = false
class.NSSet.methods.count.unsafe = false
class.NSMutableSet.methods.init.unsafe = false
class.NSMutableSet.methods.new.unsafe = false
class.NSMutableSet.methods.removeAllObjects.unsafe = false
class.NSValue.methods.objCType.unsafe = false
class.NSValue.methods."isEqualToValue:".unsafe = false
class.NSNumber.methods."initWithChar:".unsafe = false
class.NSNumber.methods."initWithUnsignedChar:".unsafe = false
class.NSNumber.methods."initWithShort:".unsafe = false
class.NSNumber.methods."initWithUnsignedShort:".unsafe = false
class.NSNumber.methods."initWithInt:".unsafe = false
class.NSNumber.methods."initWithUnsignedInt:".unsafe = false
class.NSNumber.methods."initWithLong:".unsafe = false
class.NSNumber.methods."initWithUnsignedLong:".unsafe = false
class.NSNumber.methods."initWithLongLong:".unsafe = false
class.NSNumber.methods."initWithUnsignedLongLong:".unsafe = false
class.NSNumber.methods."initWithFloat:".unsafe = false
class.NSNumber.methods."initWithDouble:".unsafe = false
class.NSNumber.methods."initWithBool:".unsafe = false
class.NSNumber.methods."initWithInteger:".unsafe = false
class.NSNumber.methods."initWithUnsignedInteger:".unsafe = false
class.NSNumber.methods."numberWithChar:".unsafe = false
class.NSNumber.methods."numberWithUnsignedChar:".unsafe = false
class.NSNumber.methods."numberWithShort:".unsafe = false
class.NSNumber.methods."numberWithUnsignedShort:".unsafe = false
class.NSNumber.methods."numberWithInt:".unsafe = false
class.NSNumber.methods."numberWithUnsignedInt:".unsafe = false
class.NSNumber.methods."numberWithLong:".unsafe = false
class.NSNumber.methods."numberWithUnsignedLong:".unsafe = false
class.NSNumber.methods."numberWithLongLong:".unsafe = false
class.NSNumber.methods."numberWithUnsignedLongLong:".unsafe = false
class.NSNumber.methods."numberWithFloat:".unsafe = false
class.NSNumber.methods."numberWithDouble:".unsafe = false
class.NSNumber.methods."numberWithBool:".unsafe = false
class.NSNumber.methods."numberWithInteger:".unsafe = false
class.NSNumber.methods."numberWithUnsignedInteger:".unsafe = false
class.NSNumber.methods."compare:".unsafe = false
class.NSNumber.methods."isEqualToNumber:".unsafe = false
class.NSNumber.methods.charValue.unsafe = false
class.NSNumber.methods.unsignedCharValue.unsafe = false
class.NSNumber.methods.shortValue.unsafe = false
class.NSNumber.methods.unsignedShortValue.unsafe = false
class.NSNumber.methods.intValue.unsafe = false
class.NSNumber.methods.unsignedIntValue.unsafe = false
class.NSNumber.methods.longValue.unsafe = false
class.NSNumber.methods.unsignedLongValue.unsafe = false
class.NSNumber.methods.longLongValue.unsafe = false
class.NSNumber.methods.unsignedLongLongValue.unsafe = false
class.NSNumber.methods.floatValue.unsafe = false
class.NSNumber.methods.doubleValue.unsafe = false
class.NSNumber.methods.boolValue.unsafe = false
class.NSNumber.methods.integerValue.unsafe = false
class.NSNumber.methods.unsignedIntegerValue.unsafe = false
class.NSNumber.methods.stringValue.unsafe = false