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

Declarations

gen/tools/clang/include/clang/AST/DeclNodes.inc
  137 OBJCCATEGORYIMPL(ObjCCategoryImpl, ObjCImplDecl)
tools/clang/include/clang/AST/ASTContext.h
  105 class ObjCCategoryImplDecl;
tools/clang/include/clang/AST/DeclBase.h
   56 class ObjCCategoryImplDecl;
tools/clang/include/clang/AST/DeclObjC.h
   50 class ObjCCategoryImplDecl;
tools/clang/include/clang/Sema/Sema.h
  143   class ObjCCategoryImplDecl;
tools/clang/lib/CodeGen/CGObjCRuntime.h
   44   class ObjCCategoryImplDecl;
tools/clang/lib/CodeGen/CodeGenModule.h
   58 class ObjCCategoryImplDecl;

References

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;
tools/clang/include/clang/AST/ASTContext.h
 2702   ObjCCategoryImplDecl *getObjCImplementation(ObjCCategoryDecl *D);
 2715                              ObjCCategoryImplDecl *ImplD);
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
 2338   ObjCCategoryImplDecl *getImplementation() const;
 2339   void setImplementation(ObjCCategoryImplDecl *ImplD);
 2516   static ObjCCategoryImplDecl *Create(ASTContext &C, DeclContext *DC,
 2522   static ObjCCategoryImplDecl *CreateDeserialized(ASTContext &C, unsigned ID);
 2532 raw_ostream &operator<<(raw_ostream &OS, const ObjCCategoryImplDecl &CID);
tools/clang/include/clang/AST/JSONNodeDumper.h
  249   void VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D);
tools/clang/include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h
   74   bool TraverseObjCCategoryImplDecl(ObjCCategoryImplDecl *D) {
   75     bool Result = BaseType::TraverseObjCCategoryImplDecl(D);
   90           !isa<ObjCCategoryImplDecl>(Child)) {
tools/clang/include/clang/AST/TextNodeDumper.h
  340   void VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D);
tools/clang/include/clang/ASTMatchers/ASTMatchers.h
 1373 extern const internal::VariadicDynCastAllOfMatcher<Decl, ObjCCategoryImplDecl>
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
 3901   void CheckCategoryVsClassMethodMatches(ObjCCategoryImplDecl *CatIMP);
tools/clang/lib/ARCMigrate/ObjCMT.cpp
  179     if (const ObjCCategoryImplDecl *CatImpl = dyn_cast<ObjCCategoryImplDecl>(D))
  179     if (const ObjCCategoryImplDecl *CatImpl = dyn_cast<ObjCCategoryImplDecl>(D))
tools/clang/lib/AST/ASTContext.cpp
 2610 ObjCCategoryImplDecl *ASTContext::getObjCImplementation(ObjCCategoryDecl *D) {
 2614     return cast<ObjCCategoryImplDecl>(I->second);
 2627                            ObjCCategoryImplDecl *ImplD) {
 6493   if (const auto *CID = dyn_cast<ObjCCategoryImplDecl>(Container)) {
 6493   if (const auto *CID = dyn_cast<ObjCCategoryImplDecl>(Container)) {
tools/clang/lib/AST/ASTImporter.cpp
  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));
  491     ExpectedDecl VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D);
 4117     if (Expected<ObjCCategoryImplDecl *> ToImplOrErr =
 4662 ASTNodeImporter::VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D) {
 4667   ObjCCategoryImplDecl *ToImpl = Category->getImplementation();
tools/clang/lib/AST/DeclObjC.cpp
  922       if (ObjCCategoryImplDecl *ImplD = Ctx.getObjCImplementation(CD))
  931     } else if (auto *CImplD = dyn_cast<ObjCCategoryImplDecl>(CtxD)) {
  931     } else if (auto *CImplD = dyn_cast<ObjCCategoryImplDecl>(CtxD)) {
  961   } else if (auto *CImplD = dyn_cast<ObjCCategoryImplDecl>(CtxD)) {
  961   } else if (auto *CImplD = dyn_cast<ObjCCategoryImplDecl>(CtxD)) {
 1681     if (ObjCCategoryImplDecl *Impl = Cat->getImplementation())
 1691     if (ObjCCategoryImplDecl *Impl = Cat->getImplementation())
 2019 ObjCCategoryImplDecl *ObjCCategoryDecl::getImplementation() const {
 2024 void ObjCCategoryDecl::setImplementation(ObjCCategoryImplDecl *ImplD) {
 2043 ObjCCategoryImplDecl *
 2052   return new (C, DC) ObjCCategoryImplDecl(DC, Id, ClassInterface, nameLoc,
 2056 ObjCCategoryImplDecl *ObjCCategoryImplDecl::CreateDeserialized(ASTContext &C,
 2058   return new (C, ID) ObjCCategoryImplDecl(nullptr, nullptr, nullptr,
 2085   } else if (auto *ImplD = dyn_cast_or_null<ObjCCategoryImplDecl>(this)) {
 2085   } else if (auto *ImplD = dyn_cast_or_null<ObjCCategoryImplDecl>(this)) {
 2136                                const ObjCCategoryImplDecl &CID) {
tools/clang/lib/AST/DeclPrinter.cpp
   93     void VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D);
  461              isa<ObjCCategoryImplDecl>(*D) ||
 1411 void DeclPrinter::VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *PID) {
tools/clang/lib/AST/Expr.cpp
  879     if (const ObjCCategoryImplDecl *CID =
  880         dyn_cast<ObjCCategoryImplDecl>(MD->getDeclContext()))
tools/clang/lib/AST/JSONNodeDumper.cpp
  945 void JSONNodeDumper::VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D) {
tools/clang/lib/AST/Mangle.cpp
  273   if (const ObjCCategoryImplDecl *CID = dyn_cast<ObjCCategoryImplDecl>(CD)) {
  273   if (const ObjCCategoryImplDecl *CID = dyn_cast<ObjCCategoryImplDecl>(CD)) {
tools/clang/lib/AST/TextNodeDumper.cpp
 1856 void TextNodeDumper::VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D) {
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
  635 const internal::VariadicDynCastAllOfMatcher<Decl, ObjCCategoryImplDecl>
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/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGDebugInfo.cpp
  294   } else if (const auto *OCD = dyn_cast<ObjCCategoryImplDecl>(DC)) {
  294   } else if (const auto *OCD = dyn_cast<ObjCCategoryImplDecl>(DC)) {
tools/clang/lib/CodeGen/CGObjC.cpp
  603     bool isCategoryImpl = isa<ObjCCategoryImplDecl>(OMD->getDeclContext());
  653     bool isCategory = isa<ObjCCategoryImplDecl>(impl);
tools/clang/lib/CodeGen/CGObjCGNU.cpp
  609   void GenerateCategory(const ObjCCategoryImplDecl *CMD) override;
 3227 void CGObjCGNU::GenerateCategory(const ObjCCategoryImplDecl *OCD) {
 3855   const ObjCCategoryImplDecl *OCD =
 3856     dyn_cast<ObjCCategoryImplDecl>(OMD->getDeclContext());
tools/clang/lib/CodeGen/CGObjCMac.cpp
 1344   void GenerateCategory(const ObjCCategoryImplDecl *CMD) override;
 1630   void GenerateCategory(const ObjCCategoryImplDecl *CMD) override;
 3350 void CGObjCMac::GenerateCategory(const ObjCCategoryImplDecl *OCD) {
 5550   if (const ObjCCategoryImplDecl *CID =
 5551       dyn_cast<ObjCCategoryImplDecl>(D->getDeclContext()))
 6548 void CGObjCNonFragileABIMac::GenerateCategory(const ObjCCategoryImplDecl *OCD) {
tools/clang/lib/CodeGen/CGObjCRuntime.h
  150   virtual void GenerateCategory(const ObjCCategoryImplDecl *OCD) = 0;
tools/clang/lib/CodeGen/CodeGenModule.cpp
 5329     ObjCRuntime->GenerateCategory(cast<ObjCCategoryImplDecl>(D));
tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
  112     SmallVector<ObjCCategoryImplDecl *, 8> CategoryImplementation;
  321                                  ObjCCategoryImplDecl *CID);
  455     void RewriteObjCCategoryImplDecl(ObjCCategoryImplDecl *CDecl,
  918                                           ObjCCategoryImplDecl *CID) {
 1247   if (ObjCCategoryImplDecl *CID =
 1248       dyn_cast<ObjCCategoryImplDecl>(OMD->getDeclContext())) {
 1333   ObjCCategoryImplDecl *CID = dyn_cast<ObjCCategoryImplDecl>(OID);
 1333   ObjCCategoryImplDecl *CID = dyn_cast<ObjCCategoryImplDecl>(OID);
 4011     ObjCCategoryImplDecl *CIMP = CategoryImplementation[i];
 5738       ObjCCategoryImplDecl *CI = cast<ObjCCategoryImplDecl>(D);
 5738       ObjCCategoryImplDecl *CI = cast<ObjCCategoryImplDecl>(D);
 7259 void RewriteModernObjC::RewriteObjCCategoryImplDecl(ObjCCategoryImplDecl *IDecl,
 7344     ObjCCategoryImplDecl *IDecl = CategoryImplementation[i];
tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp
  110     SmallVector<ObjCCategoryImplDecl *, 8> CategoryImplementation;
  269                                  ObjCCategoryImplDecl *CID);
  333     virtual void RewriteObjCCategoryImplDecl(ObjCCategoryImplDecl *CDecl,
  534     void RewriteObjCCategoryImplDecl(ObjCCategoryImplDecl *CDecl,
  768                                           ObjCCategoryImplDecl *CID) {
 1079   if (ObjCCategoryImplDecl *CID =
 1080       dyn_cast<ObjCCategoryImplDecl>(OMD->getDeclContext())) {
 1165   ObjCCategoryImplDecl *CID = dyn_cast<ObjCCategoryImplDecl>(OID);
 1165   ObjCCategoryImplDecl *CID = dyn_cast<ObjCCategoryImplDecl>(OID);
 4836       ObjCCategoryImplDecl *CI = cast<ObjCCategoryImplDecl>(D);
 4836       ObjCCategoryImplDecl *CI = cast<ObjCCategoryImplDecl>(D);
 5612 void RewriteObjCFragileABI::RewriteObjCCategoryImplDecl(ObjCCategoryImplDecl *IDecl,
tools/clang/lib/Index/IndexDecl.cpp
  474   bool VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D) {
tools/clang/lib/Index/IndexSymbol.cpp
  211         ClsD = cast<ObjCCategoryImplDecl>(D)->getClassInterface();
tools/clang/lib/Index/USRGeneration.cpp
  401       if (auto *ICD = dyn_cast<ObjCCategoryImplDecl>(D->getDeclContext()))
  450       const ObjCCategoryImplDecl *CD = cast<ObjCCategoryImplDecl>(D);
  450       const ObjCCategoryImplDecl *CD = cast<ObjCCategoryImplDecl>(D);
tools/clang/lib/Sema/CodeCompleteConsumer.cpp
  395       if (const auto *CatImpl = dyn_cast<ObjCCategoryImplDecl>(CurDC))
  395       if (const auto *CatImpl = dyn_cast<ObjCCategoryImplDecl>(CurDC))
tools/clang/lib/Sema/SemaAccess.cpp
 1924         else if (ObjCCategoryImplDecl* CatImplClass
 1925                    = dyn_cast<ObjCCategoryImplDecl>(Impl))
tools/clang/lib/Sema/SemaCodeComplete.cpp
 6258     if (ObjCCategoryImplDecl *Impl = CatDecl->getImplementation())
 7297                      !isa<ObjCCategoryImplDecl>(Container)))
 7316                       cast<ObjCCategoryImplDecl>(Container)->getCategoryDecl(),
 7336                      !isa<ObjCCategoryImplDecl>(Container)))
 7345     Class = cast<ObjCCategoryImplDecl>(Container)
 8170     } else if (ObjCCategoryImplDecl *CatImpl =
 8171                    dyn_cast<ObjCCategoryImplDecl>(D)) {
tools/clang/lib/Sema/SemaDeclObjC.cpp
  155       else if (ObjCCategoryImplDecl *CatImpl
  156                = dyn_cast<ObjCCategoryImplDecl>(DC))
 1913   ObjCCategoryImplDecl *CDecl =
 1914     ObjCCategoryImplDecl::Create(Context, CurContext, CatName, IDecl,
 2912                                   ObjCCategoryImplDecl *CatIMPDecl) {
 2999   if (ObjCCategoryImplDecl *CatDecl =
 3000         dyn_cast<ObjCCategoryImplDecl>(IMPDecl))
 4073   } else if (ObjCCategoryImplDecl* CatImplClass =
 4074                                    dyn_cast<ObjCCategoryImplDecl>(ClassDecl)) {
 4250   void searchFrom(const ObjCCategoryImplDecl *impl) {
 4355                 !isa<ObjCCategoryImplDecl>(overridden->getDeclContext())) {
 4677         if (isa<ObjCCategoryImplDecl>(ImpDecl) && IMD->isOverriding() &&
 4722     else if (ObjCCategoryImplDecl *CatImpl
 4723                                    = dyn_cast<ObjCCategoryImplDecl>(ClassDecl))
tools/clang/lib/Sema/SemaExprMember.cpp
 1419         else if (ObjCCategoryImplDecl* CatImplClass =
 1420                    dyn_cast<ObjCCategoryImplDecl>(ObjCImpDecl))
tools/clang/lib/Sema/SemaExprObjC.cpp
 1475     if (const ObjCCategoryImplDecl *catImpl =
 1476           dyn_cast<ObjCCategoryImplDecl>(impl)) {
tools/clang/lib/Sema/SemaObjCProperty.cpp
 1069   ObjCCategoryImplDecl *CatImplClass = nullptr;
 1143   } else if ((CatImplClass = dyn_cast<ObjCCategoryImplDecl>(ClassImpDecl))) {
tools/clang/lib/Serialization/ASTReaderDecl.cpp
  442     void VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D);
 1292 void ASTDeclReader::VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D) {
 3798     D = ObjCCategoryImplDecl::CreateDeserialized(Context, ID);
tools/clang/lib/Serialization/ASTWriterDecl.cpp
  142     void VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D);
  860 void ASTDeclWriter::VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D) {
tools/clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
   90       if (const ObjCCategoryImplDecl *CID = Cat->getImplementation())
tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  722     } else if (const auto *OCD = dyn_cast<ObjCCategoryImplDecl>(DC)) {
  722     } else if (const auto *OCD = dyn_cast<ObjCCategoryImplDecl>(DC)) {
tools/clang/tools/libclang/CIndex.cpp
 1183 bool CursorVisitor::VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D) {
 4471   if (const ObjCCategoryImplDecl *CIMP = dyn_cast<ObjCCategoryImplDecl>(ND))
 4471   if (const ObjCCategoryImplDecl *CIMP = dyn_cast<ObjCCategoryImplDecl>(ND))
 4693     if (const ObjCCategoryImplDecl *
 4694           CID = dyn_cast_or_null<ObjCCategoryImplDecl>(getCursorDecl(C)))
 6405     if (ObjCCategoryImplDecl *Impl
 6469     if (const ObjCCategoryImplDecl *CatImplD = dyn_cast<ObjCCategoryImplDecl>(D))
 6469     if (const ObjCCategoryImplDecl *CatImplD = dyn_cast<ObjCCategoryImplDecl>(D))
tools/clang/tools/libclang/CXIndexDataConsumer.cpp
   88   bool VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D) {
  774 bool CXIndexDataConsumer::handleObjCCategoryImpl(const ObjCCategoryImplDecl *D) {
 1039   } else if (const ObjCCategoryImplDecl *
 1040                CatImplD = dyn_cast<ObjCCategoryImplDecl>(D)) {
tools/clang/tools/libclang/CXIndexDataConsumer.h
  397   bool handleObjCCategoryImpl(const ObjCCategoryImplDecl *D);
tools/clang/tools/libclang/CursorVisitor.h
  229   bool VisitObjCCategoryImplDecl(ObjCCategoryImplDecl *D);
tools/clang/unittests/Tooling/ASTSelectionTest.cpp
  118           typename std::enable_if<std::is_base_of<Decl, T>::value, T>::type
  118           typename std::enable_if<std::is_base_of<Decl, T>::value, T>::type
  120   checkNodeImpl(isa<T>(DeclNode.Node.get<Decl>()), DeclNode, SelectionKind,
  420         const auto &Impl = checkNode<ObjCCategoryImplDecl>(
  444         const auto &Cat = checkNode<ObjCCategoryImplDecl>(
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>
 2157     { typedef _Tp type; };