reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
106 assert(D); 109 if (D->isImplicit()) 113 if (const auto *FD = dyn_cast<FunctionDecl>(D)) { 118 if (const auto *VD = dyn_cast<VarDecl>(D)) { 124 if (const auto *CRD = dyn_cast<CXXRecordDecl>(D)) { 129 if (const auto *CTSD = dyn_cast<ClassTemplateSpecializationDecl>(D)) { 136 if (const auto *ED = dyn_cast<EnumDecl>(D)) { 140 if (const auto *TD = dyn_cast<TagDecl>(D)) { 147 if (isa<ParmVarDecl>(D)) 152 if (isa<TemplateTypeParmDecl>(D) || 153 isa<NonTypeTemplateParmDecl>(D) || 154 isa<TemplateTemplateParmDecl>(D)) 163 if (isa<ObjCMethodDecl>(D) || isa<ObjCContainerDecl>(D) || 163 if (isa<ObjCMethodDecl>(D) || isa<ObjCContainerDecl>(D) || 164 isa<ObjCPropertyDecl>(D) || 165 isa<RedeclarableTemplateDecl>(D) || 166 isa<ClassTemplateSpecializationDecl>(D)) 167 return D->getBeginLoc(); 169 const SourceLocation DeclLoc = D->getLocation(); 171 if (isa<TypedefDecl>(D)) { 175 return D->getBeginLoc(); 176 } else if (const auto *TD = dyn_cast<TagDecl>(D)) {