Lines Matching defs:protocols
53 // We ignore protocols here. Should we? What about Class?
1097 // Check then save referenced protocols.
1113 /// of the protocols.
1279 /// Check then save referenced protocols.
1299 for (auto *PI : PDecl->protocols())
1307 /// FindProtocolDeclaration - This routine looks up protocols and
1359 // Objective-C protocols or valid Objective-C type arguments.
1370 // If we're allowed to find protocols and we have a protocol, accept it.
1431 SmallVectorImpl<Decl *> &protocols, SourceLocation &protocolRAngleLoc,
1438 assert(numProtocolsResolved == identifiers.size() && "Unresolved protocols");
1461 for (unsigned i = 0, n = protocols.size(); i != n; ++i) {
1463 = reinterpret_cast<ObjCProtocolDecl *&>(protocols[i]);
1506 // All of the protocols listed also have type names, and at least
1514 for (auto *proto : protocols) {
1531 assert(protocols.size() == identifierLocs.size());
1534 // Attempt to resolve all of the identifiers as protocols.
1537 protocols.push_back(proto);
1542 // If all of the names were protocols, these were protocol qualifiers.
1627 // We did not resolve these as protocols.
1628 protocols.clear();
1659 if (protocols[i] || typeDecls[i]) {
1660 // If we haven't figured out whether we want types or protocols
1665 if (protocols[i] && typeDecls[i])
1669 // toward types or protocols.
1670 lookupKind = protocols[i] ? Sema::LookupObjCProtocolName
1675 // If we want protocols and we have a protocol, there's nothing
1677 if (lookupKind == Sema::LookupObjCProtocolName && protocols[i])
1685 // We have a conflict: some names refer to protocols and others
1689 protocols[i] != nullptr);
1691 protocols.clear();
1708 protocols[i] = proto;
1743 protocols.clear();
1748 // If all of the names were (corrected to) protocols, these were
1887 // Process the attributes before looking at protocols to ensure that the
2251 // matches what we do with protocols.
2279 /// in cases where protocols are involved.
2316 // implement all of the protocols in B. It may not be a qualified class.
2688 for (const auto *PI : PDecl->protocols())
2692 /// Recursively populates a set with all conformed protocols in a class
2726 // Note: we could generalize this logic for all protocols, and merely
2728 // specially marked protocols. This may be a good optimization. This
2730 // protocols for now for controlled evaluation.
2783 // or in one of their protocols, no need to issue the warning.
2823 // Check on this protocols's referenced protocols, recursively.
2824 for (auto *PI : PDecl->protocols())
2897 // Also, check for methods declared in protocols inherited by
2899 for (auto *PI : PD->protocols())
3045 // For extended class, unimplemented methods in its protocols will
3048 for (auto *P : C->protocols())
3970 // Check on this protocols's referenced protocols, recursively.
3972 PDecl->protocols());
4079 C->protocols());
4345 // referenced ("parent") protocols.
4351 // the main class and from protocols the category references.
4384 // - any referenced protocols.
4395 void search(const ObjCProtocolList &protocols) {
4396 for (const auto *Proto : protocols)
4451 // its protocols, or its categories' protocols; we will keep that info
4695 // - we absolutely do not need to walk protocols, because
4969 for (auto &P : C->protocols())