mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-25 14:28:54 -04:00

This is the conclusion of an effort to get LLDB's Python code structured into a bona-fide Python package. This has a number of benefits, but most notably the ability to more easily share Python code between different but related pieces of LLDB's Python infrastructure (for example, `scripts` can now share code with `test`). llvm-svn: 251532
55 lines
1.0 KiB
Objective-C
55 lines
1.0 KiB
Objective-C
#import <Foundation/Foundation.h>
|
|
#import "InternalDefiner.h"
|
|
|
|
@interface Container : NSObject {
|
|
@public
|
|
InternalDefiner *_definer;
|
|
}
|
|
|
|
-(id)init;
|
|
@end
|
|
|
|
@implementation Container
|
|
|
|
-(id)init
|
|
{
|
|
if (self = [super init])
|
|
{
|
|
_definer = [[InternalDefiner alloc] initWithFoo:4 andBar:5];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
@end
|
|
|
|
@interface InheritContainer : InternalDefiner
|
|
@property (nonatomic, strong) NSMutableArray *filteredDataSource;
|
|
-(id)init;
|
|
@end
|
|
|
|
@implementation InheritContainer
|
|
|
|
-(id)init
|
|
{
|
|
if (self = [super initWithFoo:2 andBar:3])
|
|
{
|
|
self.filteredDataSource = [NSMutableArray arrayWithObjects:@"hello", @"world", nil];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
@end
|
|
|
|
int main(int argc, const char * argv[])
|
|
{
|
|
@autoreleasepool {
|
|
Container *j = [[Container alloc] init];
|
|
InheritContainer *k = [[InheritContainer alloc] init];
|
|
|
|
printf("ivar value = %u\n", (unsigned)j->_definer->foo); // breakpoint1
|
|
printf("ivar value = %u\n", (unsigned)k->foo);
|
|
}
|
|
return 0;
|
|
}
|
|
|