clang 10.0.0git

Namespaces | Functions
DeclTemplate.cpp File Reference
`#include "clang/AST/DeclTemplate.h"`
`#include "clang/AST/ASTContext.h"`
`#include "clang/AST/ASTMutationListener.h"`
`#include "clang/AST/DeclCXX.h"`
`#include "clang/AST/DeclarationName.h"`
`#include "clang/AST/Expr.h"`
`#include "clang/AST/ExternalASTSource.h"`
`#include "clang/AST/TemplateBase.h"`
`#include "clang/AST/TemplateName.h"`
`#include "clang/AST/Type.h"`
`#include "clang/AST/TypeLoc.h"`
`#include "clang/Basic/Builtins.h"`
`#include "clang/Basic/LLVM.h"`
`#include "clang/Basic/SourceLocation.h"`
`#include "llvm/ADT/ArrayRef.h"`
`#include "llvm/ADT/FoldingSet.h"`
`#include "llvm/ADT/None.h"`
`#include "llvm/ADT/PointerUnion.h"`
`#include "llvm/ADT/SmallVector.h"`
`#include "llvm/Support/Casting.h"`
`#include "llvm/Support/ErrorHandling.h"`
`#include <algorithm>`
`#include <cassert>`
`#include <cstdint>`
`#include <memory>`
`#include <utility>`
Include dependency graph for DeclTemplate.cpp:

Go to the source code of this file.

## Namespaces
| clang
| Dataflow Directional Tag Classes.

## Functions
static void | AdoptTemplateParameterList (TemplateParameterList *Params, DeclContext *Owner)
void * | clang::allocateDefaultArgStorageChain (const ASTContext &C)
static void | ProfileTemplateParameterList (ASTContext &C, llvm::FoldingSetNodeID &ID, const TemplateParameterList *TPL)
static TemplateParameterList * | createMakeIntegerSeqParameterList (const ASTContext &C, DeclContext *DC)
static TemplateParameterList * | createTypePackElementParameterList (const ASTContext &C, DeclContext *DC)
static TemplateParameterList * | createBuiltinTemplateParameterList (const ASTContext &C, DeclContext *DC, BuiltinTemplateKind BTK)

## Function Documentation

## ◆ AdoptTemplateParameterList()

static void AdoptTemplateParameterList | ( | TemplateParameterList * | Params,
|  | DeclContext * | Owner
| ) |  |
| static

Definition at line 154 of file DeclTemplate.cpp.

References clang::TemplateParameterList::getAssociatedConstraints(), and P.

Referenced by clang::FunctionTemplateDecl::Create(), clang::ClassTemplateDecl::Create(), clang::TypeAliasTemplateDecl::Create(), clang::VarTemplateDecl::Create(), and clang::ConceptDecl::Create().

## ◆ createBuiltinTemplateParameterList()

static TemplateParameterList* createBuiltinTemplateParameterList | ( | const ASTContext & | C,
|  | DeclContext * | DC,
|  | BuiltinTemplateKind | BTK
| ) |  |
| static

Definition at line 1402 of file DeclTemplate.cpp.

References clang::BTK__make_integer_seq, clang::BTK__type_pack_element, clang::C, createMakeIntegerSeqParameterList(), and createTypePackElementParameterList().

## ◆ createMakeIntegerSeqParameterList()

static TemplateParameterList* createMakeIntegerSeqParameterList | ( | const ASTContext & | C,
|  | DeclContext * | DC
| ) |  |
| static

Definition at line 1332 of file DeclTemplate.cpp.

References clang::TemplateParameterList::Create(), clang::TemplateTypeParmDecl::Create(), clang::NonTypeTemplateParmDecl::Create(), clang::TemplateTemplateParmDecl::Create(), clang::ASTContext::getTrivialTypeSourceInfo(), clang::TypeSourceInfo::getType(), P, and clang::Decl::setImplicit().

Referenced by createBuiltinTemplateParameterList().

## ◆ createTypePackElementParameterList()

static TemplateParameterList* createTypePackElementParameterList | ( | const ASTContext & | C,
|  | DeclContext * | DC
| ) |  |
| static

Definition at line 1381 of file DeclTemplate.cpp.

References clang::ASTContext::getSizeType(), and clang::ASTContext::getTrivialTypeSourceInfo().

Referenced by createBuiltinTemplateParameterList().

## ◆ ProfileTemplateParameterList()

static void ProfileTemplateParameterList | ( | ASTContext & | C,
|  | llvm::FoldingSetNodeID & | ID,
|  | const TemplateParameterList * | TPL
| ) |  |
| static

Definition at line 474 of file DeclTemplate.cpp.

References clang::TemplateParameterList::getRequiresClause(), clang::Stmt::Profile(), and clang::TemplateParameterList::size().

Referenced by clang::VarTemplatePartialSpecializationDecl::Profile().