Home | History | Annotate | Download | only in Inputs
      1 // Matches
      2 @interface I1 {
      3   int ivar1;
      4 }
      5 @end
      6 
      7 // Matches
      8 @interface I2 : I1 {
      9   float ivar2;
     10 }
     11 @end
     12 
     13 // Ivar mismatch
     14 @interface I3 {
     15   int ivar1;
     16   float ivar2;
     17 }
     18 @end
     19 
     20 // Superclass mismatch
     21 @interface I4 : I1 {
     22 }
     23 @end
     24 
     25 // Methods match
     26 @interface I5
     27 + (float)bar;
     28 - (int)foo;
     29 @end
     30 
     31 // Method mismatch
     32 @interface I6
     33 + (float)foo;
     34 @end
     35 
     36 // Method mismatch
     37 @interface I7
     38 - (int)foo;
     39 + (int)bar:(float)x;
     40 @end
     41 
     42 // Method mismatch
     43 @interface I8
     44 - (int)foo;
     45 + (int)bar:(float)x, ...;
     46 @end
     47 
     48 // Matching protocol
     49 @protocol P0
     50 + (int)foo;
     51 - (int)bar:(float)x;
     52 @end
     53 
     54 // Protocol with mismatching method
     55 @protocol P1
     56 + (int)foo;
     57 - (int)bar:(double)x;
     58 @end
     59 
     60 // Interface with protocol
     61 @interface I9 <P0>
     62 + (int)foo;
     63 - (int)bar:(float)x;
     64 @end
     65 
     66 // Protocol with protocol
     67 @protocol P2 <P0>
     68 - (float)wibble:(int)a1 second:(int)a2;
     69 @end
     70 
     71 // Forward-declared interface
     72 @class I10; @interface I12 @end
     73 @interface I11
     74 @end
     75 
     76 // Forward-declared protocols
     77 @protocol P3, P4;
     78 @protocol P5
     79 - (double)honk:(int)a;
     80 @end
     81 
     82 // Interface with implementation
     83 @interface I13
     84 @end
     85 
     86 @implementation I13
     87 @end
     88 
     89 @interface I13b
     90 @end
     91 
     92 @implementation I13b
     93 @end
     94 
     95 // Implementation by itself
     96 @implementation I14 : I12
     97 @end
     98 
     99 @implementation I15 : I11
    100 @end
    101