Lines Matching defs:protocol
259 // For protocol properties, synthesized and dynamic have no meaning, so we
260 // reuse these flags to indicate that this is a protocol property (both set
419 /// The version of the protocol class. Used to differentiate between ObjC1
449 /// Emits an empty protocol. This is used for \@protocol() where no protocol
451 /// real protocol.
951 /// A flag indicating if we've emitted at least one protocol.
952 /// If we haven't, then we need to emit an empty protocol, to ensure that the
955 /// A flag indicating if we've emitted at least one protocol reference.
956 /// If we haven't, then we need to emit an empty protocol, to ensure that the
961 /// If we haven't, then we need to emit an empty protocol, to ensure that the
1329 /// Existing protocol references.
1384 // Use the protocol definition, if there is one.
3241 // Create the protocol list structure used in classes, categories and so on
3253 llvm::Constant *protocol = nullptr;
3257 protocol = GenerateEmptyProtocol(*iter);
3259 protocol = value->getValue();
3261 Elements.add(protocol);
3270 auto protocol = GenerateProtocolRef(PD);
3273 return CGF.Builder.CreateBitCast(protocol, llvm::PointerType::getUnqual(T));
3277 llvm::Constant *&protocol = ExistingProtocols[PD->getNameAsString()];
3278 if (!protocol)
3280 assert(protocol && "Unknown protocol");
3281 return protocol;
3316 // Use the protocol definition, if there is one.
3351 // The isSynthesized value is always set to 0 in a protocol. It exists to
3353 // structures for protocol metadata everywhere.
3554 // If we're generating a list for a protocol, skip optional / required ones