2010-02-18 09:47:50 +08:00
|
|
|
typedef int Int;
|
|
|
|
|
|
|
|
@interface I1
|
|
|
|
@end
|
|
|
|
|
|
|
|
// Matching category
|
|
|
|
@interface I1 (Cat1)
|
|
|
|
- (Int)method0;
|
|
|
|
@end
|
|
|
|
|
|
|
|
// Matching class extension
|
|
|
|
@interface I1 ()
|
|
|
|
- (Int)method1;
|
|
|
|
@end
|
|
|
|
|
|
|
|
// Mismatched category
|
|
|
|
@interface I1 (Cat2)
|
|
|
|
- (float)method2;
|
|
|
|
@end
|
|
|
|
|
|
|
|
@interface I2
|
|
|
|
@end
|
|
|
|
|
|
|
|
// Mismatched class extension
|
|
|
|
@interface I2 ()
|
|
|
|
- (float)method3;
|
|
|
|
@end
|
2010-12-07 23:32:12 +08:00
|
|
|
|
|
|
|
// Category with implementation
|
|
|
|
@interface I2 (Cat3)
|
|
|
|
@end
|
|
|
|
|
2010-12-09 00:41:55 +08:00
|
|
|
@implementation I2 (Cat3)
|
|
|
|
@end
|
|
|
|
|
2010-12-07 23:32:12 +08:00
|
|
|
// Category with implementation
|
|
|
|
@interface I2 (Cat5)
|
|
|
|
@end
|
2010-12-09 00:41:55 +08:00
|
|
|
|
|
|
|
@implementation I2 (Cat5)
|
|
|
|
@end
|
|
|
|
|
|
|
|
// Category with mismatched implementation
|
|
|
|
@interface I2 (Cat6)
|
|
|
|
@end
|
|
|
|
|
|
|
|
@implementation I2 (Cat6)
|
|
|
|
- (int)blah { return 0; }
|
|
|
|
@end
|