blob: 8b71e0615db98102e89bd86a78133e8e5f989a32 [file] [log] [blame]
//
// NSError+MTLModelException.m
// Mantle
//
// Created by Robert Böhnke on 7/6/13.
// Copyright (c) 2013 GitHub. All rights reserved.
//
#import "MTLModel.h"
#import "NSError+MTLModelException.h"
// The domain for errors originating from MTLModel.
static NSString * const MTLModelErrorDomain = @"MTLModelErrorDomain";
// An exception was thrown and caught.
static const NSInteger MTLModelErrorExceptionThrown = 1;
// Associated with the NSException that was caught.
static NSString * const MTLModelThrownExceptionErrorKey = @"MTLModelThrownException";
@implementation NSError (MTLModelException)
+ (instancetype)mtl_modelErrorWithException:(NSException *)exception {
NSParameterAssert(exception != nil);
NSDictionary *userInfo = @{
NSLocalizedDescriptionKey: exception.description,
NSLocalizedFailureReasonErrorKey: exception.reason,
MTLModelThrownExceptionErrorKey: exception
};
return [NSError errorWithDomain:MTLModelErrorDomain code:MTLModelErrorExceptionThrown userInfo:userInfo];
}
@end