| 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 |
| |
| // Category with implementation |
| @interface I2 (Cat3) |
| @end |
| |
| @implementation I2 (Cat3) |
| @end |
| |
| // Category with implementation |
| @interface I2 (Cat5) |
| @end |
| |
| @implementation I2 (Cat5) |
| @end |
| |
| // Category with mismatched implementation |
| @interface I2 (Cat6) |
| @end |
| |
| @implementation I2 (Cat6) |
| - (int)blah { return 0; } |
| @end |