1 // Copyright 2018 Google Inc. All rights reserved. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at: 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 #import <Foundation/Foundation.h> 16 17 #import "tensorflow/lite/objc/apis/TFLInterpreter.h" 18 19 NS_ASSUME_NONNULL_BEGIN 20 21 /** Helper utility for error reporting. */ 22 @interface TFLErrorUtil : NSObject 23 24 /** 25 * Creates and saves an interpreter error with the given error code and description. 26 * 27 * @param code Error code. 28 * @param description Error description. 29 * @param error Pointer to where to save the created error. If `nil`, no error will be saved. 30 */ 31 + (void)saveInterpreterErrorWithCode:(TFLInterpreterErrorCode)code 32 description:(NSString *)description 33 error:(NSError **)error; 34 35 /** 36 * Sets the error with the given domain, error code and description. 37 * 38 * @param domain The error domain. 39 * @param code The error code. 40 * @param description The error description. 41 * @param error A pointer to populate the error. If `nil`, no error will be populated. 42 */ 43 + (void)setError:(NSError **)error 44 withDomain:(NSErrorDomain)domain 45 code:(NSInteger)code 46 description:(NSString *)description; 47 48 /** Unavailable. */ 49 - (instancetype)init NS_UNAVAILABLE; 50 51 @end 52 53 NS_ASSUME_NONNULL_END 54