forked from OSchip/llvm-project
48 lines
778 B
Objective-C
48 lines
778 B
Objective-C
#import <Foundation/Foundation.h>
|
|
|
|
@interface MyClass : NSObject
|
|
{
|
|
}
|
|
- (int) callMeIThrow;
|
|
- (int) iCatchMyself;
|
|
@end
|
|
|
|
@implementation MyClass
|
|
- (int) callMeIThrow
|
|
{
|
|
NSException *e = [NSException
|
|
exceptionWithName:@"JustForTheHeckOfItException"
|
|
reason:@"I felt like it"
|
|
userInfo:nil];
|
|
@throw e;
|
|
return 56;
|
|
}
|
|
|
|
- (int) iCatchMyself
|
|
{
|
|
int return_value = 55;
|
|
@try
|
|
{
|
|
return_value = [self callMeIThrow];
|
|
}
|
|
@catch (NSException *e)
|
|
{
|
|
return_value = 57;
|
|
}
|
|
return return_value;
|
|
}
|
|
@end
|
|
|
|
int
|
|
main ()
|
|
{
|
|
int return_value;
|
|
MyClass *my_class = [[MyClass alloc] init];
|
|
|
|
NSLog (@"I am about to throw.");
|
|
|
|
return_value = [my_class iCatchMyself];
|
|
|
|
return return_value;
|
|
}
|