Lines Matching defs:DC
282 TemplateDecl::TemplateDecl(Kind DK, DeclContext *DC, SourceLocation L,
285 : NamedDecl(DK, DC, L, Name), TemplatedDecl(Decl), TemplateParams(Params) {}
449 FunctionTemplateDecl::Create(ASTContext &C, DeclContext *DC, SourceLocation L,
453 auto *TD = new (C, DC) FunctionTemplateDecl(C, DC, L, Name, Params, Decl);
534 ClassTemplateDecl *ClassTemplateDecl::Create(ASTContext &C, DeclContext *DC,
540 auto *TD = new (C, DC) ClassTemplateDecl(C, DC, L, Name, Params, Decl);
683 const ASTContext &C, DeclContext *DC, SourceLocation KeyLoc,
688 new (C, DC,
690 TemplateTypeParmDecl(DC, KeyLoc, NameLoc, Id, Typename,
767 DeclContext *DC, SourceLocation StartLoc, SourceLocation IdLoc, unsigned D,
770 : DeclaratorDecl(NonTypeTemplateParm, DC, IdLoc, Id, T, TInfo, StartLoc),
784 const ASTContext &C, DeclContext *DC, SourceLocation StartLoc,
789 return new (C, DC,
793 NonTypeTemplateParmDecl(DC, StartLoc, IdLoc, D, P, Id, T, ParameterPack,
798 const ASTContext &C, DeclContext *DC, SourceLocation StartLoc,
803 return new (C, DC,
807 NonTypeTemplateParmDecl(DC, StartLoc, IdLoc, D, P, Id, T, TInfo,
863 DeclContext *DC, SourceLocation L, unsigned D, unsigned P,
866 : TemplateDecl(TemplateTemplateParm, DC, L, Id, Params),
875 TemplateTemplateParmDecl::Create(const ASTContext &C, DeclContext *DC,
879 return new (C, DC) TemplateTemplateParmDecl(DC, L, D, P, ParameterPack, Id,
884 TemplateTemplateParmDecl::Create(const ASTContext &C, DeclContext *DC,
889 return new (C, DC,
891 TemplateTemplateParmDecl(DC, L, D, P, Id, Typename, Params, Expansions);
962 DeclContext *DC, SourceLocation StartLoc,
967 : CXXRecordDecl(DK, TK, Context, DC, StartLoc, IdLoc,
982 DeclContext *DC,
989 new (Context, DC) ClassTemplateSpecializationDecl(
990 Context, ClassTemplateSpecialization, TK, DC, StartLoc, IdLoc,
1109 ConceptDecl *ConceptDecl::Create(ASTContext &C, DeclContext *DC,
1113 bool Invalid = AdoptTemplateParameterList(Params, DC);
1114 auto *TD = new (C, DC) ConceptDecl(DC, L, Name, Params, ConstraintExpr);
1132 DeclContext *DC, SourceLocation SL,
1134 : Decl(ImplicitConceptSpecialization, DC, SL),
1145 const ASTContext &C, DeclContext *DC, SourceLocation SL,
1147 return new (C, DC,
1149 ImplicitConceptSpecializationDecl(DC, SL, ConvertedArgs);
1172 ASTContext &Context, TagKind TK, DeclContext *DC, SourceLocation StartLoc,
1177 Context, ClassTemplatePartialSpecialization, TK, DC, StartLoc, IdLoc,
1186 ASTContext &Context, TagKind TK, DeclContext *DC, SourceLocation StartLoc,
1191 auto *Result = new (Context, DC) ClassTemplatePartialSpecializationDecl(
1192 Context, TK, DC, StartLoc, IdLoc, Params, SpecializedTemplate, Args,
1228 FriendTemplateDecl::Create(ASTContext &Context, DeclContext *DC,
1237 return new (Context, DC)
1238 FriendTemplateDecl(DC, L, TPL, Params.size(), Friend, FLoc);
1251 TypeAliasTemplateDecl::Create(ASTContext &C, DeclContext *DC, SourceLocation L,
1254 bool Invalid = AdoptTemplateParameterList(Params, DC);
1255 auto *TD = new (C, DC) TypeAliasTemplateDecl(C, DC, L, Name, Params, Decl);
1288 VarTemplateDecl *VarTemplateDecl::Create(ASTContext &C, DeclContext *DC,
1292 bool Invalid = AdoptTemplateParameterList(Params, DC);
1293 auto *TD = new (C, DC) VarTemplateDecl(C, DC, L, Name, Params, Decl);
1400 Kind DK, ASTContext &Context, DeclContext *DC, SourceLocation StartLoc,
1403 : VarDecl(DK, Context, DC, StartLoc, IdLoc,
1416 ASTContext &Context, DeclContext *DC, SourceLocation StartLoc,
1419 return new (Context, DC) VarTemplateSpecializationDecl(
1420 VarTemplateSpecialization, Context, DC, StartLoc, IdLoc,
1531 ASTContext &Context, DeclContext *DC, SourceLocation StartLoc,
1536 DC, StartLoc, IdLoc, SpecializedTemplate, T,
1539 if (AdoptTemplateParameterList(Params, DC))
1545 ASTContext &Context, DeclContext *DC, SourceLocation StartLoc,
1549 auto *Result = new (Context, DC) VarTemplatePartialSpecializationDecl(
1550 Context, DC, StartLoc, IdLoc, Params, SpecializedTemplate, T, TInfo, S,
1575 createMakeIntegerSeqParameterList(const ASTContext &C, DeclContext *DC) {
1578 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/1, /*Position=*/0,
1587 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/1,
1598 C, DC, SourceLocation(), /*Depth=*/0, /*Position=*/0,
1604 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/1,
1613 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/2,
1624 createTypePackElementParameterList(const ASTContext &C, DeclContext *DC) {
1628 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/0,
1633 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/1,
1646 DeclContext *DC) {
1649 TemplateTypeParmDecl::Create(C, DC, SourceLocation(), SourceLocation(),
1659 C, DC, SourceLocation(), /*Depth=*/0, /*Position=*/0,
1665 TemplateTypeParmDecl::Create(C, DC, SourceLocation(), SourceLocation(),
1676 C, DC, SourceLocation(), /*Depth=*/0, /*Position=*/1,
1682 C, DC, {}, {}, /*Depth=*/0, /*Position=*/2, /*Id=*/nullptr,
1687 C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/3,
1700 const ASTContext &C, DeclContext *DC, BuiltinTemplateKind BTK) {
1703 return createMakeIntegerSeqParameterList(C, DC);
1705 return createTypePackElementParameterList(C, DC);
1707 return createBuiltinCommonTypeList(C, DC);
1715 BuiltinTemplateDecl::BuiltinTemplateDecl(const ASTContext &C, DeclContext *DC,
1718 : TemplateDecl(BuiltinTemplate, DC, SourceLocation(), Name,
1719 createBuiltinTemplateParameterList(C, DC, BTK)),
1725 DeclContext *DC = C.getTranslationUnitDecl();
1726 auto *TPOD = new (C, DC) TemplateParamObjectDecl(DC, T, V);