// Matching properties | |
@interface I1 { | |
} | |
- (int)getProp2; | |
- (void)setProp2:(int)value; | |
@end | |
// Mismatched property | |
@interface I2 | |
@property (readonly) float Prop1; | |
@end | |
// Properties with implementations | |
@interface I3 { | |
int ivar1; | |
int ivar2; | |
int ivar3; | |
int Prop4; | |
} | |
@property int Prop1; | |
@property int Prop2; | |
@property int Prop3; | |
@property int Prop4; | |
@end | |
@implementation I3 | |
@synthesize Prop1 = ivar1; | |
@synthesize Prop2 = ivar3; | |
@dynamic Prop3; | |
@synthesize Prop4; | |
@end |