this repo has no description
1#include <stdio.h>
2#import <Foundation/NSObject.h>
3
4@protocol MyProtocol <NSObject>
5@required
6+ (void)doHelloStatic;
7- (void)doHello;
8@optional
9- (void)optFunc;
10@end
11
12@protocol EmptyProtocol
13+ (void)dummy;
14@end
15
16@interface helloclass : NSObject<MyProtocol> {
17}
18
19+ (void)doHelloStatic;
20- (void)doHello;
21@end
22
23@interface otherclass : NSObject {
24}
25
26@end
27
28@implementation otherclass
29@end
30
31@implementation helloclass
32+ (void)doHelloStatic
33{
34 puts("Hello world static");
35}
36- (void)doHello
37{
38 puts("Hello world instance");
39}
40@end
41
42int main()
43{
44 if ([helloclass conformsToProtocol:@protocol(MyProtocol)])
45 puts("helloclass conforms");
46 if (![otherclass conformsToProtocol:@protocol(MyProtocol)])
47 puts("otherclass doesn't conform");
48 id<MyProtocol> proto = [helloclass new];
49 [proto doHello];
50 return 0;
51}
52
53