Lines Matching refs:protocol
3 // Mark this protocol as requiring all of its methods and properties
6 @protocol Protocol
11 // In this example, ClassA adopts the protocol. We won't
12 // provide the implementation here, but this protocol will
48 @protocol Inherited
53 @protocol Derived <Inherited>
63 @implementation ClassD // expected-warning {{method 'foulIsFair' in protocol 'Derived' not implemen…
68 @protocol AnotherProtocol @end
70 // Cannot put the attribute on classes or other non-protocol declarations.
80 @protocol ProtocolA
86 @protocol ProtocolB <ProtocolA>
93 @protocol ProtocolB_Explicit <ProtocolA>
99 @protocol ProtocolC
139 @implementation Shoggoth_2 // expected-warning {{method 'innsmouth' in protocol 'ProtocolB' not imp…
140 … // expected-warning {{method 'rlyeh' in protocol 'ProtocolA' not implemented}}\
141 … // expected-warning {{'innsmouth' in protocol 'ProtocolA' not implemented}}
145 @implementation Shoggoth_Explicit // expected-warning {{method 'innsmouth' in protocol 'ProtocolB_E…
149 @implementation Shoggoth_2_Explicit // expected-warning {{method 'innsmouth' in protocol 'ProtocolB…
150 … // expected-warning {{method 'rlyeh' in protocol 'ProtocolA' not implemented}}\
151 … // expected-warning {{method 'innsmouth' in protocol 'ProtocolA' not implemented}}
155 // Categories adopting a protocol with explicit conformance need to implement that protocol.
167 @implementation Derived (MyCat) // expected-warning {{method 'theBestOfTimes' in protocol 'Protocol…
170 …objc_protocol_requires_explicit_implementation' can only be applied to @protocol definitions, not …
171 @protocol NotDefined;
175 @protocol Ex2FooBar
180 @protocol Ex2ProtocolA
185 @protocol Ex2ProtocolB <Ex2ProtocolA>
190 @protocol Ex2ProtocolC <Ex2ProtocolA>
205 @implementation Ex2ClassB // expected-warning {{method 'methodA' in protocol 'Ex2ProtocolB' not imp…