clang 22.0.0git
|
Public Member Functions | |
TemplateParameterListBuilder (BuiltinTypeDeclBuilder &RB) | |
~TemplateParameterListBuilder () | |
TemplateParameterListBuilder & | addTypeParameter (StringRef Name, QualType DefaultValue=QualType()) |
ConceptSpecializationExpr * | constructConceptSpecializationExpr (Sema &S, ConceptDecl *CD) |
BuiltinTypeDeclBuilder & | finalizeTemplateArgs (ConceptDecl *CD=nullptr) |
Public Attributes | |
BuiltinTypeDeclBuilder & | Builder |
llvm::SmallVector< NamedDecl * > | Params |
Definition at line 54 of file HLSLBuiltinTypeDeclBuilder.cpp.
|
inline |
Definition at line 58 of file HLSLBuiltinTypeDeclBuilder.cpp.
clang::hlsl::TemplateParameterListBuilder::~TemplateParameterListBuilder | ( | ) |
Definition at line 170 of file HLSLBuiltinTypeDeclBuilder.cpp.
References finalizeTemplateArgs().
TemplateParameterListBuilder & clang::hlsl::TemplateParameterListBuilder::addTypeParameter | ( | StringRef | Name, |
QualType | DefaultValue = QualType() |
||
) |
Definition at line 175 of file HLSLBuiltinTypeDeclBuilder.cpp.
References Builder, clang::TemplateTypeParmDecl::Create(), clang::IdentifierTable::get(), clang::Sema::getASTContext(), clang::Decl::getDeclContext(), clang::Sema::getTrivialTemplateArgumentLoc(), clang::ASTContext::Idents, clang::TagDecl::isCompleteDefinition(), clang::QualType::isNull(), and Params.
ConceptSpecializationExpr * clang::hlsl::TemplateParameterListBuilder::constructConceptSpecializationExpr | ( | Sema & | S, |
ConceptDecl * | CD | ||
) |
Definition at line 219 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::TemplateArgumentListInfo::addArgument(), Builder, clang::ConceptSpecializationExpr::Create(), clang::ASTTemplateArgumentListInfo::Create(), clang::TemplateTypeParmDecl::Create(), clang::ImplicitConceptSpecializationDecl::Create(), clang::ConceptReference::Create(), clang::TypeDecl::getBeginLoc(), clang::Decl::getDeclContext(), clang::NamedDecl::getDeclName(), clang::TemplateParameterList::getParam(), clang::TemplateDecl::getTemplateParameters(), Loc, clang::TemplateParameterList::size(), and clang::T.
Referenced by finalizeTemplateArgs().
BuiltinTypeDeclBuilder & clang::hlsl::TemplateParameterListBuilder::finalizeTemplateArgs | ( | ConceptDecl * | CD = nullptr | ) |
Definition at line 292 of file HLSLBuiltinTypeDeclBuilder.cpp.
References clang::DeclContext::addDecl(), Builder, constructConceptSpecializationExpr(), clang::Sema::Context, clang::ClassTemplateDecl::Create(), clang::TemplateParameterList::Create(), clang::Decl::getDeclContext(), clang::NamedDecl::getIdentifier(), Params, clang::CXXRecordDecl::setDescribedClassTemplate(), clang::Decl::setImplicit(), clang::Decl::setLexicalDeclContext(), and clang::Redeclarable< decl_type >::setPreviousDecl().
Referenced by ~TemplateParameterListBuilder().
BuiltinTypeDeclBuilder& clang::hlsl::TemplateParameterListBuilder::Builder |
Definition at line 55 of file HLSLBuiltinTypeDeclBuilder.cpp.
Referenced by addTypeParameter(), constructConceptSpecializationExpr(), and finalizeTemplateArgs().
llvm::SmallVector<NamedDecl *> clang::hlsl::TemplateParameterListBuilder::Params |
Definition at line 56 of file HLSLBuiltinTypeDeclBuilder.cpp.
Referenced by addTypeParameter(), and finalizeTemplateArgs().