reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

gen/tools/clang/include/clang/AST/DeclNodes.inc
  127 OBJCCATEGORY(ObjCCategory, ObjCContainerDecl)
tools/clang/include/clang/AST/ASTContext.h
  104 class ObjCCategoryDecl;
tools/clang/include/clang/AST/ASTMutationListener.h
   30   class ObjCCategoryDecl;
tools/clang/include/clang/AST/DeclBase.h
   55 class ObjCCategoryDecl;
tools/clang/include/clang/AST/DeclObjC.h
   49 class ObjCCategoryDecl;
tools/clang/include/clang/Sema/Sema.h
  142   class ObjCCategoryDecl;
tools/clang/include/clang/Serialization/ASTReader.h
  103 class ObjCCategoryDecl;

References

gen/tools/clang/include/clang/Sema/AttrParsedAttrImpl.inc
 3538     return isa<ObjCCategoryDecl>(D);
include/llvm/ADT/STLExtras.h
   75       typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
   66   static inline bool doit(const From &) { return true; }
  104   static inline bool doit(const From *Val) {
  106     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  265   return cast_convert_val<X, Y*,
  266                           typename simplify_type<Y*>::SimpleType>::doit(Val);
  305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  309   return cast<X>(Val);
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
include/llvm/Support/PointerLikeTypeTraits.h
   56   static inline void *getAsVoidPointer(T *P) { return P; }
   57   static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
   59   enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
tools/clang/include/clang/AST/ASTContext.h
 2702   ObjCCategoryImplDecl *getObjCImplementation(ObjCCategoryDecl *D);
 2714   void setObjCImplementation(ObjCCategoryDecl *CatD,
tools/clang/include/clang/AST/ASTMutationListener.h
  108   virtual void AddedObjCCategoryToInterface(const ObjCCategoryDecl *CatD,
tools/clang/include/clang/AST/ASTNodeTraverser.h
  561   void VisitObjCCategoryDecl(const ObjCCategoryDecl *D) {
tools/clang/include/clang/AST/ASTTypeTraits.h
   65     return ASTNodeKind(KindToKindId<T>::Id);
   65     return ASTNodeKind(KindToKindId<T>::Id);
   65     return ASTNodeKind(KindToKindId<T>::Id);
tools/clang/include/clang/AST/DeclBase.h
 2474   static const ToTy *doit(const DeclContext *Val) {
 2478   static ToTy *doit(DeclContext *Val) {
 2491     return To::classofKind(Val.getDeclKind());
 2514   static const ToTy *doit(const ::clang::DeclContext *Val) {
 2515     return ::clang::cast_convert_decl_context<ToTy>::doit(Val);
 2521   static ToTy *doit(::clang::DeclContext *Val) {
 2522     return ::clang::cast_convert_decl_context<ToTy>::doit(Val);
 2536   static ::clang::DeclContext *doit(const FromTy *Val) {
 2537     return FromTy::castToDeclContext(Val);
tools/clang/include/clang/AST/DeclObjC.h
 1198     ObjCCategoryDecl *CategoryList = nullptr;
 1351   ObjCCategoryDecl *FindCategoryDeclaration(IdentifierInfo *CategoryId) const;
 1598     ObjCCategoryDecl *Current = nullptr;
 1603     using value_type = ObjCCategoryDecl *;
 1610     explicit filtered_category_iterator(ObjCCategoryDecl *Current)
 1641   static bool isVisibleCategory(ObjCCategoryDecl *Cat);
 1677   static bool isKnownCategory(ObjCCategoryDecl *) { return true; }
 1711   static bool isVisibleExtension(ObjCCategoryDecl *Cat);
 1747   static bool isKnownExtension(ObjCCategoryDecl *Cat);
 1783   ObjCCategoryDecl* getCategoryListRaw() const {
 1796   void setCategoryListRaw(ObjCCategoryDecl *category) {
 1843                                const ObjCCategoryDecl *C = nullptr) const;
 1869                                          const ObjCCategoryDecl *Cat,
 2291   ObjCCategoryDecl *NextClassCategory = nullptr;
 2313   static ObjCCategoryDecl *Create(ASTContext &C, DeclContext *DC,
 2322   static ObjCCategoryDecl *CreateDeserialized(ASTContext &C, unsigned ID);
 2381   ObjCCategoryDecl *getNextClassCategory() const { return NextClassCategory; }
 2385   ObjCCategoryDecl *getNextClassCategoryRaw() const {
 2524   ObjCCategoryDecl *getCategoryDecl() const;
 2884 inline bool ObjCInterfaceDecl::isVisibleCategory(ObjCCategoryDecl *Cat) {
 2888 inline bool ObjCInterfaceDecl::isVisibleExtension(ObjCCategoryDecl *Cat) {
 2892 inline bool ObjCInterfaceDecl::isKnownExtension(ObjCCategoryDecl *Cat) {
tools/clang/include/clang/AST/JSONNodeDumper.h
  248   void VisitObjCCategoryDecl(const ObjCCategoryDecl *D);
tools/clang/include/clang/AST/RecursiveASTVisitor.h
 1522   if (ObjCTypeParamList *typeParamList = D->getTypeParamList()) {
tools/clang/include/clang/AST/TextNodeDumper.h
  339   void VisitObjCCategoryDecl(const ObjCCategoryDecl *D);
tools/clang/include/clang/ASTMatchers/ASTMatchers.h
 1363 extern const internal::VariadicDynCastAllOfMatcher<Decl, ObjCCategoryDecl>
tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h
  436     return canConvertTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  445   template <typename T> Matcher<T> convertTo() const {
  447     return unconditionalConvertTo<T>();
  499   explicit Matcher(MatcherInterface<T> *Implementation)
  507           typename std::enable_if<std::is_base_of<From, T>::value &&
  508                                !std::is_same<From, T>::value>::type * = nullptr)
  520             std::is_same<T, QualType>::value &&
  529     static_assert(std::is_base_of<To, T>::value, "Invalid dynCast call.");
  534   bool matches(const T &Node,
  581     return Other.dynCastTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
 1243   operator Matcher<T>() const {
 1245                ast_type_traits::ASTNodeKind::getFromNodeKind<T>())
 1246         .template unconditionalConvertTo<T>();
 1255 class BindableMatcher : public Matcher<T> {
 1257   explicit BindableMatcher(const Matcher<T> &M) : Matcher<T>(M) {}
 1258   explicit BindableMatcher(MatcherInterface<T> *Implementation)
 1265   Matcher<T> bind(StringRef ID) const {
 1370 inline Matcher<T> DynTypedMatcher::unconditionalConvertTo() const {
 1376 BindableMatcher<T> makeAllOfComposite(
 1377     ArrayRef<const Matcher<T> *> InnerMatchers) {
 1388   using PI = llvm::pointee_iterator<const Matcher<T> *const *>;
 1395           ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
 1397           .template unconditionalConvertTo<T>());
 1408     ArrayRef<const Matcher<InnerT> *> InnerMatchers) {
 1557     : public VariadicFunction<BindableMatcher<SourceT>, Matcher<TargetT>,
 1558                               makeDynCastAllOfComposite<SourceT, TargetT>> {
tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h
  199   ast_matchers::internal::Matcher<T> getTypedMatcher() const {
  202         ->template convertTo<T>();
  227       : MatcherOps(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()) {}
  228   typedef ast_matchers::internal::Matcher<T> MatcherT;
  232     return DynTypedMatcher(Matcher.convertTo<T>());
tools/clang/include/clang/Sema/Sema.h
 8693   void DiagnoseClassExtensionDupMethods(ObjCCategoryDecl *CAT,
11522     if (const ObjCCategoryDecl *CatD = dyn_cast<ObjCCategoryDecl>(DC))
11522     if (const ObjCCategoryDecl *CatD = dyn_cast<ObjCCategoryDecl>(DC))
tools/clang/include/clang/Serialization/ASTReader.h
 1122   llvm::SmallPtrSet<ObjCCategoryDecl *, 16> CategoriesDeserialized;
tools/clang/include/clang/Serialization/ASTWriter.h
  735   void AddedObjCCategoryToInterface(const ObjCCategoryDecl *CatD,
tools/clang/lib/ARCMigrate/ObjCMT.cpp
  575   if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(D)) {
  575   if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(D)) {
 1044     if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
 1044     if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
 1315     if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
 1315     if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
 1867       if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(*D)) {
 1867       if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(*D)) {
tools/clang/lib/ARCMigrate/TransGCAttrs.cpp
  150       if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(ContD))
  150       if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(ContD))
tools/clang/lib/ARCMigrate/TransProperties.cpp
   99     for (auto *Ext : iface->visible_extensions())
tools/clang/lib/AST/ASTContext.cpp
  453     for (const auto *Ext : ID->known_extensions()) {
  582     else if (const auto *CD = dyn_cast<ObjCCategoryDecl>(D)) {
  582     else if (const auto *CD = dyn_cast<ObjCCategoryDecl>(D)) {
 2379     for (const auto *Cat : OI->visible_categories())
 2387   } else if (const auto *OC = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 2387   } else if (const auto *OC = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 2569   for (const auto *Ext : OI->known_extensions())
 2610 ObjCCategoryImplDecl *ASTContext::getObjCImplementation(ObjCCategoryDecl *D) {
 2626 void ASTContext::setObjCImplementation(ObjCCategoryDecl *CatD,
 2647   if (const auto *CD = dyn_cast<ObjCCategoryDecl>(ND->getDeclContext()))
 2647   if (const auto *CD = dyn_cast<ObjCCategoryDecl>(ND->getDeclContext()))
tools/clang/lib/AST/ASTImporter.cpp
  152     LLVM_NODISCARD Error importInto(ImportT *&To, ImportT *From) {
  152     LLVM_NODISCARD Error importInto(ImportT *&To, ImportT *From) {
  155         To = cast_or_null<ImportT>(*ToOrErr);
  162     Expected<T *> import(T *From) {
  162     Expected<T *> import(T *From) {
  166       return cast_or_null<T>(*ToOrErr);
  170     Expected<T *> import(const T *From) {
  170     Expected<T *> import(const T *From) {
  217           -> decltype(ToDeclT::Create(std::forward<Args>(args)...)) {
  218         return ToDeclT::Create(std::forward<Args>(args)...);
  229     LLVM_NODISCARD bool GetImportedOrCreateDecl(ToDeclT *&ToD, FromDeclT *FromD,
  229     LLVM_NODISCARD bool GetImportedOrCreateDecl(ToDeclT *&ToD, FromDeclT *FromD,
  234       CallOverloadedCreateFun<ToDeclT> OC;
  256     GetImportedOrCreateSpecialDecl(ToDeclT *&ToD, CreateFunT CreateFun,
  257                                    FromDeclT *FromD, Args &&... args) {
  262       ToD = cast_or_null<ToDeclT>(Importer.GetAlreadyImportedOrNull(FromD));
  478     ExpectedDecl VisitObjCCategoryDecl(ObjCCategoryDecl *D);
 4034 ExpectedDecl ASTNodeImporter::VisitObjCCategoryDecl(ObjCCategoryDecl *D) {
 4050   ObjCCategoryDecl *MergeWithCategory
 4052   ObjCCategoryDecl *ToCategory = MergeWithCategory;
 4086     ObjCCategoryDecl::protocol_loc_iterator FromProtoLoc
 4088     for (ObjCCategoryDecl::protocol_iterator FromProto = D->protocol_begin(),
 4546   for (auto *Cat : From->known_categories()) {
 4663   ObjCCategoryDecl *Category;
tools/clang/lib/AST/DeclObjC.cpp
  137     for (const auto *Cat : ID->visible_categories()) {
  190     for (const auto *Ext : IDecl->visible_extensions())
  248     for (const auto *Ext : ClassDecl->visible_extensions()) {
  273       for (const auto *Cat : OID->visible_categories()) {
  292       const auto *OCD = cast<ObjCCategoryDecl>(this);
  292       const auto *OCD = cast<ObjCCategoryDecl>(this);
  398   for (const auto *Ext : known_extensions()) {
  399     const ObjCCategoryDecl *ClassExt = Ext;
  491   for (const auto *Ext : D->visible_extensions()) {
  553   for (const auto *Ext : IFace->visible_extensions()) {
  588   for (const auto *Ext : IFace->visible_extensions()) {
  636     for (const auto *Ext : ClassDecl->visible_extensions()) {
  686                                                 const ObjCCategoryDecl *C) const
  704     for (const auto *Cat : ClassDecl->visible_categories())
  716       for (const auto *Cat : ClassDecl->visible_categories()) {
  921     } else if (auto *CD = dyn_cast<ObjCCategoryDecl>(CtxD)) {
  921     } else if (auto *CD = dyn_cast<ObjCCategoryDecl>(CtxD)) {
  932       if (ObjCCategoryDecl *CatD = CImplD->getCategoryDecl())
  962     if (ObjCCategoryDecl *CatD = CImplD->getCategoryDecl())
 1146   if (auto *CD = dyn_cast<ObjCCategoryDecl>(getDeclContext()))
 1146   if (auto *CD = dyn_cast<ObjCCategoryDecl>(getDeclContext()))
 1186   if (const auto *Category = dyn_cast<ObjCCategoryDecl>(Container)) {
 1186   if (const auto *Category = dyn_cast<ObjCCategoryDecl>(Container)) {
 1227     for (const auto *Cat : Interface->known_categories())
 1264   } else if (const auto *CatD =
 1265                  dyn_cast<ObjCCategoryDecl>(Method->getDeclContext())) {
 1341     if (const auto *Category = dyn_cast<ObjCCategoryDecl>(Container)) {
 1341     if (const auto *Category = dyn_cast<ObjCCategoryDecl>(Container)) {
 1352       for (const auto *Ext : ClassDecl->visible_extensions()) {
 1605     for (const auto *Ext : known_extensions()) {
 1607         ObjCCategoryDecl::ivar_iterator
 1662 ObjCCategoryDecl *
 1671   for (auto *Cat : visible_categories())
 1680   for (const auto *Cat : visible_categories()) {
 1690   for (const auto *Cat : visible_categories()) {
 1726     for (const auto *Cat : visible_categories()) {
 1774         ID = cast<ObjCCategoryDecl>(DC)->getClassInterface();
 1800     const auto *CD = cast<ObjCCategoryDecl>(DC);
 1800     const auto *CD = cast<ObjCCategoryDecl>(DC);
 1986 ObjCCategoryDecl *ObjCCategoryDecl::Create(ASTContext &C, DeclContext *DC,
 1995   auto *CatDecl =
 1996       new (C, DC) ObjCCategoryDecl(DC, AtLoc, ClassNameLoc, CategoryNameLoc, Id,
 2012 ObjCCategoryDecl *ObjCCategoryDecl::CreateDeserialized(ASTContext &C,
 2014   return new (C, ID) ObjCCategoryDecl(nullptr, SourceLocation(),
 2063 ObjCCategoryDecl *ObjCCategoryImplDecl::getCategoryDecl() const {
 2086     if (ObjCCategoryDecl *CD = IFace->FindCategoryDeclaration(getIdentifier()))
tools/clang/lib/AST/DeclPrinter.cpp
   94     void VisitObjCCategoryDecl(ObjCCategoryDecl *D);
  462              isa<ObjCCategoryDecl>(*D))
 1419 void DeclPrinter::VisitObjCCategoryDecl(ObjCCategoryDecl *PID) {
tools/clang/lib/AST/JSONNodeDumper.cpp
  933 void JSONNodeDumper::VisitObjCCategoryDecl(const ObjCCategoryDecl *D) {
tools/clang/lib/AST/TextNodeDumper.cpp
 1848 void TextNodeDumper::VisitObjCCategoryDecl(const ObjCCategoryDecl *D) {
tools/clang/lib/AST/Type.cpp
 1451   const ObjCCategoryDecl *dcCategoryDecl = nullptr;
 1462     dcCategoryDecl = dyn_cast<ObjCCategoryDecl>(dc);
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
  633 const internal::VariadicDynCastAllOfMatcher<Decl, ObjCCategoryDecl>
tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h
   75     return Value.isMatcher() && Value.getMatcher().hasTypedMatcher<T>();
   78   static ast_matchers::internal::Matcher<T> get(const VariantValue &Value) {
   79     return Value.getMatcher().getTypedMatcher<T>();
   83     return ArgKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  466       ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT> Func,
  469         DerivedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<DerivedT>()) {
  778     ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT>
tools/clang/lib/Analysis/BodyFarm.cpp
  719   } else if (auto *CategoryDecl = dyn_cast<ObjCCategoryDecl>(Container)) {
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGDebugInfo.cpp
  287   } else if (const auto *OC = dyn_cast<ObjCCategoryDecl>(DC)) {
  287   } else if (const auto *OC = dyn_cast<ObjCCategoryDecl>(DC)) {
 2504     for (const ObjCCategoryDecl *ClassExt : ID->known_extensions())
tools/clang/lib/CodeGen/CGObjCGNU.cpp
  280       ObjCCategoryDecl *OCD);
 1186   llvm::Constant *GenerateCategoryProtocolList(const ObjCCategoryDecl *OCD)
 3220     ObjCCategoryDecl *OCD) {
 3233   const ObjCCategoryDecl *CatDecl = OCD->getCategoryDecl();
 3257     const ObjCCategoryDecl *Category =
 3305     for (const ObjCCategoryDecl *ClassExt : OID->known_extensions())
 3331   else if (const ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(OCD))
 3331   else if (const ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(OCD))
tools/clang/lib/CodeGen/CGObjCMac.cpp
 3260     for (const ObjCCategoryDecl *ClassExt : OID->known_extensions())
 3282   else if (const ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(OCD)) {
 3282   else if (const ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(OCD)) {
 3358   const ObjCCategoryDecl *Category =
 6580   const ObjCCategoryDecl *Category =
tools/clang/lib/CodeGen/CodeGenFunction.h
 4225     if (const ObjCCategoryDecl *catDecl = dyn_cast<ObjCCategoryDecl>(dc)) {
 4225     if (const ObjCCategoryDecl *catDecl = dyn_cast<ObjCCategoryDecl>(dc)) {
tools/clang/lib/Frontend/ASTUnit.cpp
  351   } else if (isa<ObjCCategoryDecl>(ND)) {
tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
  122     SmallVector<ObjCCategoryDecl *, 8> DefinedNonLazyCategories;
  330     void RewriteCategoryDecl(ObjCCategoryDecl *Dcl);
  737   } else if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(D)) {
  737   } else if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(D)) {
  861       if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
  861       if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
 1127 void RewriteModernObjC::RewriteCategoryDecl(ObjCCategoryDecl *CatDecl) {
 6610                              ObjCCategoryDecl *CatDecl,
 7264   ObjCCategoryDecl *CDecl
 7345     ObjCCategoryDecl *CatDecl= IDecl->getCategoryDecl();
 7503           if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
 7503           if (ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CDecl))
tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp
  278     void RewriteCategoryDecl(ObjCCategoryDecl *Dcl);
  669   } else if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(D)) {
  669   } else if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(D)) {
  966 void RewriteObjC::RewriteCategoryDecl(ObjCCategoryDecl *CatDecl) {
 5616   ObjCCategoryDecl *CDecl
tools/clang/lib/Index/IndexDecl.cpp
  454   bool VisitObjCCategoryDecl(const ObjCCategoryDecl *D) {
  475     const ObjCCategoryDecl *Cat = D->getCategoryDecl();
tools/clang/lib/Index/IndexSymbol.cpp
  208       if (auto *CatD = dyn_cast<ObjCCategoryDecl>(D))
tools/clang/lib/Index/IndexingContext.cpp
  185   if (isa<ObjCCategoryDecl>(D))
  267           !isa<ObjCCategoryDecl>(ND)) || isa<CXXDeductionGuideDecl>(ND);
tools/clang/lib/Index/USRGeneration.cpp
   91                               const ObjCCategoryDecl *CatD = nullptr);
  399       if (auto *CD = dyn_cast<ObjCCategoryDecl>(D->getDeclContext()))
  416                                           const ObjCCategoryDecl *CatD) {
  426       const ObjCCategoryDecl *CD = cast<ObjCCategoryDecl>(D);
  426       const ObjCCategoryDecl *CD = cast<ObjCCategoryDecl>(D);
tools/clang/lib/Sema/CodeCompleteConsumer.cpp
  398       if (const auto *Cat = dyn_cast<ObjCCategoryDecl>(CurDC)) {
  398       if (const auto *Cat = dyn_cast<ObjCCategoryDecl>(CurDC)) {
tools/clang/lib/Sema/SemaCodeComplete.cpp
 4626       for (auto *Cat : IFace->known_categories())
 4646   } else if (const auto *Category =
 4647                  dyn_cast<ObjCCategoryDecl>(Container)) {
 6243   for (ObjCCategoryDecl *CatDecl : IFace->known_categories()) {
 6282     if (ObjCCategoryDecl *Category =
 6283             dyn_cast_or_null<ObjCCategoryDecl>(CurContext))
 6308     if (ObjCCategoryDecl *Category =
 6309             dyn_cast_or_null<ObjCCategoryDecl>(CurContext))
 6516       for (const auto *Cat : Class->known_categories()) {
 7228     for (const auto *Cat : Class->visible_categories())
 7236     if (const auto *Category = dyn_cast<ObjCCategoryDecl>(D))
 7236     if (const auto *Category = dyn_cast<ObjCCategoryDecl>(D))
 7272     for (const auto *Cat : Class->visible_categories()) {
 7450     for (auto *Cat : IFace->visible_categories()) {
 7462   if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(Container)) {
 7462   if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(Container)) {
 8305       if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(SearchDecl))
 8305       if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(SearchDecl))
 8309       for (auto *Cat : IFace->visible_categories())
tools/clang/lib/Sema/SemaDecl.cpp
16309     if (ObjCCategoryDecl *CDecl =
16310         dyn_cast<ObjCCategoryDecl>(EnclosingDecl)) {
16378     if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(CurContext)) {
16378     if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(CurContext)) {
16414       Context.ResetObjCLayout(cast<ObjCCategoryDecl>(DC)->getClassInterface());
16814     } else if (ObjCCategoryDecl *CDecl =
16815                 dyn_cast<ObjCCategoryDecl>(EnclosingDecl)) {
16832           for (const auto *Ext : IDecl->known_extensions()) {
tools/clang/lib/Sema/SemaDeclAttr.cpp
 5203       !(isa<ObjCCategoryDecl>(Ctx) &&
 5204         cast<ObjCCategoryDecl>(Ctx)->IsClassExtension())) {
 5210   if (auto *CatDecl = dyn_cast<ObjCCategoryDecl>(Ctx))
 5210   if (auto *CatDecl = dyn_cast<ObjCCategoryDecl>(Ctx))
 7654     else if (const auto *CatD = dyn_cast<ObjCCategoryDecl>(Ctx))
 7654     else if (const auto *CatD = dyn_cast<ObjCCategoryDecl>(Ctx))
tools/clang/lib/Sema/SemaDeclObjC.cpp
  127                              const ObjCCategoryDecl *CD,
  151       if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(DC))
  151       if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(DC))
  305     if (const auto *CD = dyn_cast<ObjCCategoryDecl>(ND)) {
  305     if (const auto *CD = dyn_cast<ObjCCategoryDecl>(ND)) {
  316               : isa<ObjCCategoryDecl>(ND) || IsCategory ? /*Category*/ 2
  323         << (isa<ObjCCategoryDecl>(ND) ? "category" : "class");
  448       else if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(ContDeclOfMethodDecl)) {
  448       else if (ObjCCategoryDecl *CD = dyn_cast<ObjCCategoryDecl>(ContDeclOfMethodDecl)) {
 1744 void Sema::DiagnoseClassExtensionDupMethods(ObjCCategoryDecl *CAT,
 1804   ObjCCategoryDecl *CDecl;
 1816     CDecl = ObjCCategoryDecl::Create(Context, CurContext, AtInterfaceLoc,
 1835     if (ObjCCategoryDecl *Previous
 1863   CDecl = ObjCCategoryDecl::Create(Context, CurContext, AtInterfaceLoc,
 1899   ObjCCategoryDecl *CatIDecl = nullptr;
 1905       CatIDecl = ObjCCategoryDecl::Create(Context, CurContext, AtCatImplLoc,
 2148       for (const auto *CDecl : IDecl->visible_extensions()) {
 2680   ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl);
 2680   ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl);
 2880       for (auto *Cat : I->visible_categories())
 2887       for (auto *Ext : I->visible_extensions())
 2914   ObjCCategoryDecl *CatDecl = CatIMPDecl->getCategoryDecl();
 3014   } else if (ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 3014   } else if (ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 3285   if (ObjCCategoryDecl *CD =
 3286           dyn_cast<ObjCCategoryDecl>(Method->getDeclContext()))
 3787       if (cast<ObjCCategoryDecl>(CurContext)->IsClassExtension())
 3816   } else if (auto *CategoryDecl = dyn_cast<ObjCCategoryDecl>(OCD)) {
 3816   } else if (auto *CategoryDecl = dyn_cast<ObjCCategoryDecl>(OCD)) {
 3902         isa<ObjCInterfaceDecl>(ClassDecl) || isa<ObjCCategoryDecl>(ClassDecl)
 3966   } else if (ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(ClassDecl)) {
 3966   } else if (ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(ClassDecl)) {
 3993       for (const auto *Ext : IDecl->visible_extensions()) {
 4003           for (const auto *Ext : IDecl->visible_extensions()) {
 4080       if (ObjCCategoryDecl *Cat
 4203     if (const ObjCCategoryDecl *Category =
 4204             dyn_cast<ObjCCategoryDecl>(container)) {
 4243   void searchFrom(const ObjCCategoryDecl *category) {
 4254     if (ObjCCategoryDecl *category = impl->getCategoryDecl()) {
 4271     for (auto *Cat : iface->known_categories())
 4687       for (auto *C : IDecl->visible_categories())
 4718     if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(ClassDecl))
 4718     if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(ClassDecl))
tools/clang/lib/Sema/SemaExprMember.cpp
 1367         if (auto *Category = dyn_cast<ObjCCategoryDecl>(D))
 1367         if (auto *Category = dyn_cast<ObjCCategoryDecl>(D))
tools/clang/lib/Sema/SemaLookup.cpp
 3889       for (auto *Cat : IFace->visible_categories()) {
 3922     } else if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(Ctx)) {
 3922     } else if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(Ctx)) {
tools/clang/lib/Sema/SemaObjCProperty.cpp
  199   if (ObjCCategoryDecl *CDecl = dyn_cast<ObjCCategoryDecl>(ClassDecl)) {
  199   if (ObjCCategoryDecl *CDecl = dyn_cast<ObjCCategoryDecl>(ClassDecl)) {
  263   } else if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(ClassDecl)) {
  263   } else if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(ClassDecl)) {
  400   if (auto Category = dyn_cast<ObjCCategoryDecl>(OldDC))
  426   ObjCCategoryDecl *CDecl = cast<ObjCCategoryDecl>(CurContext);
  426   ObjCCategoryDecl *CDecl = cast<ObjCCategoryDecl>(CurContext);
  448   if (PIDecl && isa<ObjCCategoryDecl>(PIDecl->getDeclContext())) {
 1020   auto Category = dyn_cast<ObjCCategoryDecl>(Prop->getDeclContext());
 1097     if (const ObjCCategoryDecl *CD =
 1098         dyn_cast<ObjCCategoryDecl>(property->getDeclContext())) {
 1112       for (auto *Ext : IDecl->known_extensions()) {
 1153     ObjCCategoryDecl *Category =
 1714     for (auto *Ext : IDecl->visible_extensions())
 1725   if (ObjCCategoryDecl *CATDecl = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 1725   if (ObjCCategoryDecl *CATDecl = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 1801   for (const auto *Ext : IFace->known_extensions())
 1940     ObjCImplDecl *IMPDecl, ObjCContainerDecl *CDecl, ObjCCategoryDecl *C,
 1958         isa<ObjCCategoryDecl>(CDecl)
 1987     if (ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 1987     if (ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl)) {
 2050   ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl);
 2050   ObjCCategoryDecl *C = dyn_cast<ObjCCategoryDecl>(CDecl);
 2119   for (const auto *Ext : IDecl->known_extensions())
 2289         for (auto *Ext : IFD->visible_extensions())
 2336     if (const ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CD))
 2336     if (const ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CD))
 2347     if (const ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CD))
 2347     if (const ObjCCategoryDecl *CatDecl = dyn_cast<ObjCCategoryDecl>(CD))
 2527     if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(CD))
 2527     if (ObjCCategoryDecl *Cat = dyn_cast<ObjCCategoryDecl>(CD))
tools/clang/lib/Serialization/ASTReaderDecl.cpp
  317     static void setNextObjCCategory(ObjCCategoryDecl *Cat,
  318                                     ObjCCategoryDecl *Next) {
  440     void VisitObjCCategoryDecl(ObjCCategoryDecl *D);
 1226 void ASTDeclReader::VisitObjCCategoryDecl(ObjCCategoryDecl *CD) {
 3795     D = ObjCCategoryDecl::CreateDeserialized(Context, ID);
 4106     llvm::SmallPtrSetImpl<ObjCCategoryDecl *> &Deserialized;
 4107     ObjCCategoryDecl *Tail = nullptr;
 4108     llvm::DenseMap<DeclarationName, ObjCCategoryDecl *> NameCategoryMap;
 4112     void add(ObjCCategoryDecl *Cat) {
 4119         ObjCCategoryDecl *&Existing = NameCategoryMap[Cat->getDeclName()];
 4154                           llvm::SmallPtrSetImpl<ObjCCategoryDecl *> &Deserialized,
 4160       for (auto *Cat : Interface->known_categories()) {
 4202         add(cast_or_null<ObjCCategoryDecl>(
tools/clang/lib/Serialization/ASTWriter.cpp
 6506 void ASTWriter::AddedObjCCategoryToInterface(const ObjCCategoryDecl *CatD,
tools/clang/lib/Serialization/ASTWriterDecl.cpp
  140     void VisitObjCCategoryDecl(ObjCCategoryDecl *D);
  757     if (ObjCCategoryDecl *Cat = D->getCategoryListRaw()) {
  812 void ASTDeclWriter::VisitObjCCategoryDecl(ObjCCategoryDecl *D) {
tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
  812   auto *CatDecl = dyn_cast<ObjCCategoryDecl>(PropDecl->getDeclContext());
tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp
  262     for (const auto *Ext : InterfD->visible_extensions())
tools/clang/lib/StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp
   60   } else if (auto *CatD = dyn_cast<ObjCCategoryDecl>(D->getDeclContext())) {
tools/clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
   89     for (const auto *Cat : ID->getClassInterface()->visible_categories()) {
tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp
 1287                     isa<ObjCCategoryDecl>(CompileTimeMD->getDeclContext())) {
 1299                   for (auto *CatDecl : ID->visible_extensions()) {
tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  715     } else if (const auto *OC = dyn_cast<ObjCCategoryDecl>(DC)) {
  715     } else if (const auto *OC = dyn_cast<ObjCCategoryDecl>(DC)) {
tools/clang/tools/extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
  117   auto *CategoryDecl = llvm::dyn_cast<ObjCCategoryDecl>(DeclContext);
tools/clang/tools/libclang/CIndex.cpp
 1068 bool CursorVisitor::VisitObjCCategoryDecl(ObjCCategoryDecl *ND) {
 1076   ObjCCategoryDecl::protocol_loc_iterator PL = ND->protocol_loc_begin();
 1077   for (ObjCCategoryDecl::protocol_iterator I = ND->protocol_begin(),
 1105   ObjCCategoryDecl *CDecl = dyn_cast<ObjCCategoryDecl>(PD->getDeclContext());
 1105   ObjCCategoryDecl *CDecl = dyn_cast<ObjCCategoryDecl>(PD->getDeclContext());
 4690     if (const ObjCCategoryDecl *
 4691           CD = dyn_cast_or_null<ObjCCategoryDecl>(getCursorDecl(C)))
 6406                                = cast<ObjCCategoryDecl>(D)->getImplementation())
 6470       if (ObjCCategoryDecl *CatD = CatImplD->getCategoryDecl())
tools/clang/tools/libclang/CXIndexDataConsumer.cpp
   83   bool VisitObjCCategoryDecl(const ObjCCategoryDecl *D) {
  742 bool CXIndexDataConsumer::handleObjCCategory(const ObjCCategoryDecl *D) {
  777   const ObjCCategoryDecl *CatD = D->getCategoryDecl();
 1219   if (isa<ObjCCategoryDecl>(D))
tools/clang/tools/libclang/CXIndexDataConsumer.h
  396   bool handleObjCCategory(const ObjCCategoryDecl *D);
tools/clang/tools/libclang/CursorVisitor.h
  223   bool VisitObjCCategoryDecl(ObjCCategoryDecl *ND);
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1580     { typedef _Tp const     type; };
 1629     { typedef _Tp   type; };
 1983     { typedef _Up     type; };
 1999     { typedef typename remove_reference<_Tp>::type*     type; };
 2003     : public __add_pointer_helper<_Tp>