xref: /llvm-project/lldb/test/API/lang/objc/objc-optimized/main.m (revision 99451b4453688a94c6014cac233d371ab4cc342d)
1*99451b44SJordan Rupprecht#import <Foundation/Foundation.h>
2*99451b44SJordan Rupprecht
3*99451b44SJordan Rupprecht@interface MyClass : NSObject {
4*99451b44SJordan Rupprecht  int member;
5*99451b44SJordan Rupprecht}
6*99451b44SJordan Rupprecht
7*99451b44SJordan Rupprecht- (id)initWithMember:(int)_member;
8*99451b44SJordan Rupprecht- (NSString*)description;
9*99451b44SJordan Rupprecht@end
10*99451b44SJordan Rupprecht
11*99451b44SJordan Rupprecht@implementation MyClass
12*99451b44SJordan Rupprecht
13*99451b44SJordan Rupprecht- (id)initWithMember:(int)_member
14*99451b44SJordan Rupprecht{
15*99451b44SJordan Rupprecht    if (self = [super init])
16*99451b44SJordan Rupprecht    {
17*99451b44SJordan Rupprecht      member = _member;
18*99451b44SJordan Rupprecht    }
19*99451b44SJordan Rupprecht    return self;
20*99451b44SJordan Rupprecht}
21*99451b44SJordan Rupprecht
22*99451b44SJordan Rupprecht- (void)dealloc
23*99451b44SJordan Rupprecht{
24*99451b44SJordan Rupprecht    [super dealloc];
25*99451b44SJordan Rupprecht}
26*99451b44SJordan Rupprecht
27*99451b44SJordan Rupprecht// Set a breakpoint on '-[MyClass description]' and test expressions: expr member
28*99451b44SJordan Rupprecht- (NSString *)description
29*99451b44SJordan Rupprecht{
30*99451b44SJordan Rupprecht    return [NSString stringWithFormat:@"%d", member];
31*99451b44SJordan Rupprecht}
32*99451b44SJordan Rupprecht@end
33*99451b44SJordan Rupprecht
34*99451b44SJordan Rupprechtint main (int argc, char const *argv[])
35*99451b44SJordan Rupprecht{
36*99451b44SJordan Rupprecht    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
37*99451b44SJordan Rupprecht
38*99451b44SJordan Rupprecht    MyClass *my_object = [[MyClass alloc] initWithMember:5];
39*99451b44SJordan Rupprecht
40*99451b44SJordan Rupprecht    NSLog(@"MyObject %@", [my_object description]);
41*99451b44SJordan Rupprecht
42*99451b44SJordan Rupprecht    [pool release];
43*99451b44SJordan Rupprecht    return 0;
44*99451b44SJordan Rupprecht}
45