@@ -280,34 +280,62 @@ struct _CFSwiftBridge {
280
280
struct _NSURLBridge NSURL ;
281
281
};
282
282
283
- struct _NSCFXMLBridge {
284
- CFIndex (* _Nonnull CFArrayGetCount )(CFArrayRef );
285
- const void * _Null_unspecified (* _Nonnull CFArrayGetValueAtIndex )(CFArrayRef , CFIndex );
286
- _Null_unspecified CFErrorRef (* _Nonnull CFErrorCreate )(CFAllocatorRef _Nullable , CFStringRef , CFIndex , CFDictionaryRef _Nullable );
287
- _Null_unspecified CFStringRef (* _Nonnull CFStringCreateWithCString )(CFAllocatorRef _Nullable , const char * _Null_unspecified , CFStringEncoding );
288
- _Null_unspecified CFMutableStringRef (* _Nonnull CFStringCreateMutable )(CFAllocatorRef _Nullable , CFIndex );
289
- void (* _Nonnull CFStringAppend )(CFMutableStringRef , CFStringRef );
290
- void (* _Nonnull CFStringAppendCString )(CFMutableStringRef , const char * _Null_unspecified , CFStringEncoding );
291
- CFIndex (* _Nonnull CFStringGetLength )(CFStringRef );
292
- CFIndex (* _Nonnull CFStringGetMaximumSizeForEncoding )(CFIndex , CFStringEncoding );
293
- Boolean (* _Nonnull CFStringGetCString )(CFStringRef , char * , CFIndex , CFStringEncoding );
294
- _Null_unspecified CFDataRef (* _Nonnull CFDataCreateWithBytesNoCopy )(CFAllocatorRef _Nullable , const uint8_t * , CFIndex , CFAllocatorRef );
295
- void (* _Nonnull CFRelease )(CFTypeRef );
296
- _Null_unspecified CFStringRef (* _Nonnull CFStringCreateWithBytes )(CFAllocatorRef _Nullable , const UInt8 * , CFIndex , CFStringEncoding , Boolean );
297
- _Null_unspecified CFMutableArrayRef (* _Nonnull CFArrayCreateMutable )(CFAllocatorRef _Nullable , CFIndex , const CFArrayCallBacks * _Nullable );
298
- void (* _Nonnull CFArrayAppendValue )(CFMutableArrayRef , const void * );
299
- CFIndex (* _Nonnull CFDataGetLength )(CFDataRef );
300
- const uint8_t * _Null_unspecified (* _Nonnull CFDataGetBytePtr )(CFDataRef );
301
- _Null_unspecified CFMutableDictionaryRef (* _Nonnull CFDictionaryCreateMutable )(CFAllocatorRef _Nullable , CFIndex , const CFDictionaryKeyCallBacks * , const CFDictionaryValueCallBacks * );
302
- void (* _Nonnull CFDictionarySetValue )(CFMutableDictionaryRef , const void * _Null_Unspecified , const void * _Null_unspecified );
303
- const _Null_unspecified CFAllocatorRef * _Nonnull kCFAllocatorSystemDefault ;
304
- const _Null_unspecified CFAllocatorRef * _Nonnull kCFAllocatorNull ;
305
- const CFDictionaryKeyCallBacks * _Nonnull kCFCopyStringDictionaryKeyCallBacks ;
306
- const CFDictionaryValueCallBacks * _Nonnull kCFTypeDictionaryValueCallBacks ;
307
- _Null_unspecified const CFStringRef * _Nonnull kCFErrorLocalizedDescriptionKey ;
283
+ struct _NSCFXMLBridgeStrong {
284
+ CFIndex (* _Nonnull CFArrayGetCount )(CFArrayRef );
285
+ const void * _Null_unspecified (* _Nonnull CFArrayGetValueAtIndex )(CFArrayRef , CFIndex );
286
+ _Null_unspecified CFErrorRef (* _Nonnull CFErrorCreate )(CFAllocatorRef _Nullable , CFStringRef , CFIndex , CFDictionaryRef _Nullable );
287
+ _Null_unspecified CFStringRef (* _Nonnull CFStringCreateWithCString )(CFAllocatorRef _Nullable , const char * _Null_unspecified , CFStringEncoding );
288
+ _Null_unspecified CFMutableStringRef (* _Nonnull CFStringCreateMutable )(CFAllocatorRef _Nullable , CFIndex );
289
+ void (* _Nonnull CFStringAppend )(CFMutableStringRef , CFStringRef );
290
+ void (* _Nonnull CFStringAppendCString )(CFMutableStringRef , const char * _Null_unspecified , CFStringEncoding );
291
+ CFIndex (* _Nonnull CFStringGetLength )(CFStringRef );
292
+ CFIndex (* _Nonnull CFStringGetMaximumSizeForEncoding )(CFIndex , CFStringEncoding );
293
+ Boolean (* _Nonnull CFStringGetCString )(CFStringRef , char * , CFIndex , CFStringEncoding );
294
+ _Null_unspecified CFDataRef (* _Nonnull CFDataCreateWithBytesNoCopy )(CFAllocatorRef _Nullable , const uint8_t * , CFIndex , CFAllocatorRef );
295
+ void (* _Nonnull CFRelease )(CFTypeRef );
296
+ _Null_unspecified CFStringRef (* _Nonnull CFStringCreateWithBytes )(CFAllocatorRef _Nullable , const UInt8 * , CFIndex , CFStringEncoding , Boolean );
297
+ _Null_unspecified CFMutableArrayRef (* _Nonnull CFArrayCreateMutable )(CFAllocatorRef _Nullable , CFIndex , const CFArrayCallBacks * _Nullable );
298
+ void (* _Nonnull CFArrayAppendValue )(CFMutableArrayRef , const void * );
299
+ CFIndex (* _Nonnull CFDataGetLength )(CFDataRef );
300
+ const uint8_t * _Null_unspecified (* _Nonnull CFDataGetBytePtr )(CFDataRef );
301
+ _Null_unspecified CFMutableDictionaryRef (* _Nonnull CFDictionaryCreateMutable )(CFAllocatorRef _Nullable , CFIndex , const CFDictionaryKeyCallBacks * , const CFDictionaryValueCallBacks * );
302
+ void (* _Nonnull CFDictionarySetValue )(CFMutableDictionaryRef , const void * _Null_Unspecified , const void * _Null_unspecified );
303
+ const _Null_unspecified CFAllocatorRef * _Nonnull kCFAllocatorSystemDefault ;
304
+ const _Null_unspecified CFAllocatorRef * _Nonnull kCFAllocatorNull ;
305
+ const CFDictionaryKeyCallBacks * _Nonnull kCFCopyStringDictionaryKeyCallBacks ;
306
+ const CFDictionaryValueCallBacks * _Nonnull kCFTypeDictionaryValueCallBacks ;
307
+ _Null_unspecified const CFStringRef * _Nonnull kCFErrorLocalizedDescriptionKey ;
308
308
};
309
309
310
- CF_EXPORT struct _NSCFXMLBridge __NSCFXMLBridge ;
310
+ struct _NSCFXMLBridgeUntyped {
311
+ void * CFArrayGetCount ;
312
+ void * CFArrayGetValueAtIndex ;
313
+ void * CFErrorCreate ;
314
+ void * CFStringCreateWithCString ;
315
+ void * CFStringCreateMutable ;
316
+ void * CFStringAppend ;
317
+ void * CFStringAppendCString ;
318
+ void * CFStringGetLength ;
319
+ void * CFStringGetMaximumSizeForEncoding ;
320
+ void * CFStringGetCString ;
321
+ void * CFDataCreateWithBytesNoCopy ;
322
+ void * CFRelease ;
323
+ void * CFStringCreateWithBytes ;
324
+ void * CFArrayCreateMutable ;
325
+ void * CFArrayAppendValue ;
326
+ void * CFDataGetLength ;
327
+ void * CFDataGetBytePtr ;
328
+ void * CFDictionaryCreateMutable ;
329
+ void * CFDictionarySetValue ;
330
+ void * kCFAllocatorSystemDefault ;
331
+ void * kCFAllocatorNull ;
332
+ void * kCFCopyStringDictionaryKeyCallBacks ;
333
+ void * kCFTypeDictionaryValueCallBacks ;
334
+ void * kCFErrorLocalizedDescriptionKey ;
335
+ };
336
+
337
+ CF_EXPORT struct _NSCFXMLBridgeStrong __NSCFXMLBridgeStrong ;
338
+ CF_EXPORT struct _NSCFXMLBridgeUntyped __NSCFXMLBridgeUntyped ;
311
339
312
340
CF_EXPORT struct _CFSwiftBridge __CFSwiftBridge ;
313
341
@@ -478,6 +506,12 @@ static inline _Bool _withStackOrHeapBuffer(size_t amount, void (__attribute__((n
478
506
return true;
479
507
}
480
508
509
+ static inline _Bool _withStackOrHeapBufferWithResultInArguments (size_t amount , void (__attribute__((noescape )) ^ _Nonnull applier )(void * _Nonnull memory , size_t capacity , _Bool onStack )) {
510
+ return _withStackOrHeapBuffer (amount , ^(_ConditionalAllocationBuffer * buffer ) {
511
+ applier (buffer -> memory , buffer -> capacity , buffer -> onStack );
512
+ });
513
+ }
514
+
481
515
#pragma mark - Character Set
482
516
483
517
CF_CROSS_PLATFORM_EXPORT CFIndex __CFCharDigitValue (UniChar ch );
0 commit comments