brintos

brintos / llvm-project-archived public Read only

0
0
Text · 902 B · bb0da28 Raw
47 lines · c
1 2// Define a public header for the ObjC methods that are "visible" externally3// and, thus, could be sub-classed. We should explore the path on which these4// are sub-classed with unknown class by not inlining them.5 6typedef signed char BOOL;7typedef struct objc_class *Class;8typedef struct objc_object {9    Class isa;10} *id;11@protocol NSObject  - (BOOL)isEqual:(id)object; @end12@interface NSObject <NSObject> {}13+(id)alloc;14+(id)new;15-(id)init;16-(id)autorelease;17-(id)copy;18- (Class)class;19-(id)retain;20@end21 22@interface PublicClass : NSObject {23  int value3;24}25- (int)getZeroPublic;26 27- (int) value2;28 29@property (readonly) int value1;30 31@property int value3;32- (int)value3;33- (void)setValue3:(int)newValue;34@end35 36@interface PublicSubClass : PublicClass37@end38 39@interface PublicParent : NSObject40- (int)getZeroOverridden;41@end42 43@interface PublicSubClass2 : PublicParent44- (int) getZeroOverridden;45@end46 47