mirror of https://github.com/oxen-io/session-ios
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			27 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
| 
											8 years ago
										 | //
 | ||
|  | //  Copyright (c) 2018 Open Whisper Systems. All rights reserved.
 | ||
|  | //
 | ||
|  | 
 | ||
|  | NS_ASSUME_NONNULL_BEGIN | ||
|  | 
 | ||
|  | @interface NSItemProvider (OWS) | ||
|  | 
 | ||
|  | // NSItemProvider.loadItem(forTypeIdentifier:...) is unsafe to call from Swift,
 | ||
|  | // since it can yield values of arbitrary type.  It has a highly unusual design
 | ||
|  | // in which its behavior depends on the _type_ of the completion handler.
 | ||
|  | // loadItem(forTypeIdentifier:...) tries to satisfy the expected type of the
 | ||
|  | // completion handler.  This "hinting" only works in Objective-C.  In Swift,
 | ||
|  | // The type of the completion handler must agree with the param type.
 | ||
|  | //
 | ||
|  | // Therefore we use an Objective-C category to hint to NSItemProvider that we
 | ||
|  | // prefer an instance of NSData.
 | ||
|  | //
 | ||
|  | // See: https://developer.apple.com/documentation/foundation/nsitemprovider/1403900-loaditemfortypeidentifier
 | ||
|  | - (void)loadDataForTypeIdentifier:(NSString *)typeIdentifier | ||
|  |                           options:(nullable NSDictionary *)options | ||
|  |                 completionHandler:(nullable NSItemProviderCompletionHandler)completionHandler; | ||
|  | 
 | ||
|  | @end | ||
|  | 
 | ||
|  | NS_ASSUME_NONNULL_END |