clang 22.0.0git
Template.h File Reference
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/DeclVisitor.h"
#include "clang/AST/TemplateBase.h"
#include "clang/AST/Type.h"
#include "clang/Basic/LLVM.h"
#include "clang/Sema/Sema.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/SmallVector.h"
#include <cassert>
#include <optional>
#include <utility>
#include "clang/AST/DeclNodes.inc"

Go to the source code of this file.

Classes

class  clang::MultiLevelTemplateArgumentList
 Data structure that captures multiple levels of template argument lists for use in template instantiation. More...
class  clang::TemplatePartialOrderingContext
class  clang::DeducedTemplateArgument
 Captures a template argument whose value has been deduced via c++ template argument deduction. More...
class  clang::LocalInstantiationScope
 A stack-allocated class that identifies which local variable declaration instantiations are present in this scope. More...
class  clang::TemplateDeclInstantiator

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.

Macros

#define DECL(DERIVED, BASE)
#define ABSTRACT_DECL(DECL)
#define OBJCCONTAINER(DERIVED, BASE)
#define FILESCOPEASM(DERIVED, BASE)
#define TOPLEVELSTMT(DERIVED, BASE)
#define IMPORT(DERIVED, BASE)
#define EXPORT(DERIVED, BASE)
#define LINKAGESPEC(DERIVED, BASE)
#define OBJCCOMPATIBLEALIAS(DERIVED, BASE)
#define OBJCMETHOD(DERIVED, BASE)
#define OBJCTYPEPARAM(DERIVED, BASE)
#define OBJCIVAR(DERIVED, BASE)
#define OBJCPROPERTY(DERIVED, BASE)
#define OBJCPROPERTYIMPL(DERIVED, BASE)
#define EMPTY(DERIVED, BASE)
#define LIFETIMEEXTENDEDTEMPORARY(DERIVED, BASE)
#define OUTLINEDFUNCTION(DERIVED, BASE)
#define BLOCK(DERIVED, BASE)
#define CAPTURED(DERIVED, BASE)
#define IMPLICITPARAM(DERIVED, BASE)

Enumerations

enum class  clang::TemplateSubstitutionKind : char { clang::Specialization , clang::Rewrite }
 The kind of template substitution being performed. More...
enum  clang::TPOC { clang::TPOC_Call , clang::TPOC_Conversion , clang::TPOC_Other }
 The context in which partial ordering of function templates occurs. More...

Macro Definition Documentation

◆ ABSTRACT_DECL

#define ABSTRACT_DECL ( DECL)

Definition at line 618 of file Template.h.

◆ BLOCK

#define BLOCK ( DERIVED,
BASE )

Definition at line 640 of file Template.h.

◆ CAPTURED

#define CAPTURED ( DERIVED,
BASE )

Definition at line 641 of file Template.h.

◆ DECL

#define DECL ( DERIVED,
BASE )
Value:
Decl *Visit ## DERIVED ## Decl(DERIVED ## Decl *D);

Definition at line 616 of file Template.h.

◆ EMPTY

#define EMPTY ( DERIVED,
BASE )

Definition at line 633 of file Template.h.

◆ EXPORT

#define EXPORT ( DERIVED,
BASE )

Definition at line 625 of file Template.h.

◆ FILESCOPEASM

#define FILESCOPEASM ( DERIVED,
BASE )

Definition at line 622 of file Template.h.

◆ IMPLICITPARAM

#define IMPLICITPARAM ( DERIVED,
BASE )

Definition at line 642 of file Template.h.

◆ IMPORT

#define IMPORT ( DERIVED,
BASE )

Definition at line 624 of file Template.h.

Referenced by clang::ASTReader::readASTFileControlBlock().

◆ LIFETIMEEXTENDEDTEMPORARY

#define LIFETIMEEXTENDEDTEMPORARY ( DERIVED,
BASE )

Definition at line 634 of file Template.h.

◆ LINKAGESPEC

#define LINKAGESPEC ( DERIVED,
BASE )

Definition at line 626 of file Template.h.

◆ OBJCCOMPATIBLEALIAS

#define OBJCCOMPATIBLEALIAS ( DERIVED,
BASE )

Definition at line 627 of file Template.h.

◆ OBJCCONTAINER

#define OBJCCONTAINER ( DERIVED,
BASE )

Definition at line 621 of file Template.h.

◆ OBJCIVAR

#define OBJCIVAR ( DERIVED,
BASE )

Definition at line 630 of file Template.h.

◆ OBJCMETHOD

#define OBJCMETHOD ( DERIVED,
BASE )

Definition at line 628 of file Template.h.

◆ OBJCPROPERTY

#define OBJCPROPERTY ( DERIVED,
BASE )

Definition at line 631 of file Template.h.

◆ OBJCPROPERTYIMPL

#define OBJCPROPERTYIMPL ( DERIVED,
BASE )

Definition at line 632 of file Template.h.

◆ OBJCTYPEPARAM

#define OBJCTYPEPARAM ( DERIVED,
BASE )

Definition at line 629 of file Template.h.

◆ OUTLINEDFUNCTION

#define OUTLINEDFUNCTION ( DERIVED,
BASE )

Definition at line 637 of file Template.h.

◆ TOPLEVELSTMT

#define TOPLEVELSTMT ( DERIVED,
BASE )

Definition at line 623 of file Template.h.