xref: /llvm-project/lldb/test/API/python_api/class_members/main.mm (revision d1a1798e51a30fbf537e9fd8931a49b504f37a25)
1*d1a1798eSDave Lee#import <objc/NSObject.h>
299451b44SJordan Rupprecht
399451b44SJordan Rupprechtclass Base {
499451b44SJordan Rupprechtpublic:
599451b44SJordan Rupprecht    int foo(int x, int y) { return 1; }
699451b44SJordan Rupprecht    char bar(int x, char y) { return 2; }
799451b44SJordan Rupprecht    void dat() {}
899451b44SJordan Rupprecht    static int sfunc(char, int, float) { return 3; }
999451b44SJordan Rupprecht};
1099451b44SJordan Rupprecht
1199451b44SJordan Rupprechtclass Derived: public Base {
1299451b44SJordan Rupprechtprotected:
1399451b44SJordan Rupprecht    int dImpl() { return 1; }
1499451b44SJordan Rupprechtpublic:
1599451b44SJordan Rupprecht    float baz(float b) { return b + 1.0; }
1699451b44SJordan Rupprecht};
1799451b44SJordan Rupprecht
1899451b44SJordan Rupprecht@interface Thingy: NSObject {
1999451b44SJordan Rupprecht}
2099451b44SJordan Rupprecht- (id)init;
2199451b44SJordan Rupprecht- (id)fooWithBar: (int)bar andBaz:(id)baz;
2299451b44SJordan Rupprecht@end
2399451b44SJordan Rupprecht
2499451b44SJordan Rupprecht@implementation Thingy {
2599451b44SJordan Rupprecht}
2699451b44SJordan Rupprecht- (id)init {
2799451b44SJordan Rupprecht    return (self = [super init]);
2899451b44SJordan Rupprecht}
2999451b44SJordan Rupprecht- (id)fooWithBar: (int)bar andBaz:(id)baz {
3099451b44SJordan Rupprecht    return nil;
3199451b44SJordan Rupprecht}
3299451b44SJordan Rupprecht@end
3399451b44SJordan Rupprecht
3499451b44SJordan Rupprechtint main() {
3599451b44SJordan Rupprecht    Derived d;
3699451b44SJordan Rupprecht    Thingy *thingy = [[Thingy alloc] init];
3799451b44SJordan Rupprecht    return 0; // set breakpoint here
3899451b44SJordan Rupprecht}
39