37 lines
1021 B
Objective-C
37 lines
1021 B
Objective-C
//
|
|
// 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
|