1 // 2 // ETCoreMLPair.h 3 // 4 // Copyright © 2024 Apple Inc. All rights reserved. 5 // 6 // Please refer to the license found in the LICENSE file in the root directory of the source tree. 7 8 #import <Foundation/Foundation.h> 9 10 NS_ASSUME_NONNULL_BEGIN 11 /// A class representing a pair with first and second objects. 12 __attribute__((objc_subclassing_restricted)) 13 @interface ETCoreMLPair<First, Second> : NSObject<NSCopying> 14 15 - (instancetype)init NS_UNAVAILABLE; 16 17 + (instancetype)new NS_UNAVAILABLE; 18 19 /// Constructs an `ETCoreMLPair` instance. 20 /// 21 /// @param first The first object of this pair. 22 /// @param second The second object of this pair. 23 - (instancetype)initWithFirst:(First)first second:(Second)second NS_DESIGNATED_INITIALIZER; 24 25 /// The first object. 26 @property (nonatomic, readonly) First first; 27 28 /// The second object.. 29 @property (nonatomic, readonly) Second second; 30 31 @end 32 33 NS_ASSUME_NONNULL_END 34