Lines Matching defs:Protocols
2633 llvm::SmallPtrSet<ObjCProtocolDecl*, 8> &Protocols) {
2638 CollectInheritedProtocols(Proto, Protocols);
2643 CollectInheritedProtocols(Cat, Protocols);
2647 CollectInheritedProtocols(SD, Protocols);
2652 CollectInheritedProtocols(Proto, Protocols);
2656 if (!Protocols.insert(
2661 CollectInheritedProtocols(Proto, Protocols);
5663 static bool areSortedAndUniqued(ArrayRef<ObjCProtocolDecl *> Protocols) {
5664 if (Protocols.empty()) return true;
5666 if (Protocols[0]->getCanonicalDecl() != Protocols[0])
5669 for (unsigned i = 1; i != Protocols.size(); ++i)
5670 if (CmpProtocolNames(&Protocols[i - 1], &Protocols[i]) >= 0 ||
5671 Protocols[i]->getCanonicalDecl() != Protocols[i])
5677 SortAndUniqueProtocols(SmallVectorImpl<ObjCProtocolDecl *> &Protocols) {
5679 llvm::array_pod_sort(Protocols.begin(), Protocols.end(), CmpProtocolNames);
5682 for (ObjCProtocolDecl *&P : Protocols)
5686 auto ProtocolsEnd = std::unique(Protocols.begin(), Protocols.end());
5687 Protocols.erase(ProtocolsEnd, Protocols.end());
5691 ObjCProtocolDecl * const *Protocols,
5694 llvm::ArrayRef(Protocols, NumProtocols),
10528 SmallVector<ObjCProtocolDecl *, 8> Protocols;
10530 Protocols);
10531 if (!Protocols.empty())
10539 Result = getObjCObjectType(Result, LHSTypeArgs, Protocols,
10579 SmallVector<ObjCProtocolDecl *, 8> Protocols;
10581 Protocols);
10582 if (!Protocols.empty())
10589 Result = getObjCObjectType(Result, RHSTypeArgs, Protocols,