Lines Matching defs:CurDecl
74 static Response UseNextDecl(const Decl *CurDecl) {
75 return ChangeDecl(CurDecl->getDeclContext());
78 static Response DontClearRelativeToPrimaryNextDecl(const Decl *CurDecl) {
79 Response R = Response::UseNextDecl(CurDecl);
464 Response HandleGenericDeclContext(const Decl *CurDecl) {
465 return Response::UseNextDecl(CurDecl);
480 const Decl *CurDecl = ND;
493 if (const auto *TTP = dyn_cast<TemplateTemplateParmDecl>(CurDecl))
495 CurDecl = DC ? Decl::castFromDeclContext(DC)
496 : Response::UseNextDecl(CurDecl).NextDecl;
497 } else if (!CurDecl)
498 CurDecl = Decl::castFromDeclContext(DC);
500 while (!CurDecl->isFileContextDecl()) {
503 dyn_cast<VarTemplateSpecializationDecl>(CurDecl)) {
506 dyn_cast<ClassTemplatePartialSpecializationDecl>(CurDecl)) {
510 dyn_cast<ClassTemplateSpecializationDecl>(CurDecl)) {
513 } else if (const auto *Function = dyn_cast<FunctionDecl>(CurDecl)) {
517 } else if (const auto *Rec = dyn_cast<CXXRecordDecl>(CurDecl)) {
521 dyn_cast<ImplicitConceptSpecializationDecl>(CurDecl)) {
523 } else if (const auto *FTD = dyn_cast<FunctionTemplateDecl>(CurDecl)) {
525 } else if (const auto *CTD = dyn_cast<ClassTemplateDecl>(CurDecl)) {
527 } else if (!isa<DeclContext>(CurDecl)) {
528 R = Response::DontClearRelativeToPrimaryNextDecl(CurDecl);
529 if (const auto *TTP = dyn_cast<TemplateTemplateParmDecl>(CurDecl)) {
533 R = HandleGenericDeclContext(CurDecl);
541 CurDecl = R.NextDecl;