clang API Documentation

Classes | Namespaces | Typedefs
DeclTemplate.h File Reference

Defines the C++ template declaration subclasses. More...

#include "clang/AST/DeclCXX.h"
#include "clang/AST/Redeclarable.h"
#include "clang/AST/TemplateBase.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/Support/Compiler.h"
#include <limits>
Include dependency graph for DeclTemplate.h:

Go to the source code of this file.

Classes

class  clang::TemplateParameterList
 Stores a list of template parameters for a TemplateDecl and its derived classes. More...
class  clang::FixedSizeTemplateParameterList< N >
 Stores a list of template parameters for a TemplateDecl and its derived classes. Suitable for creating on the stack. More...
class  clang::TemplateArgumentList
 A template argument list. More...
class  clang::TemplateDecl
 The base class of all kinds of template declarations (e.g., class, function, etc.). More...
class  clang::FunctionTemplateSpecializationInfo
 Provides information about a function template specialization, which is a FunctionDecl that has been explicitly specialization or instantiated from a function template. More...
class  clang::MemberSpecializationInfo
 Provides information a specialization of a member of a class template, which may be a member function, static data member, member class or member enumeration. More...
class  clang::DependentFunctionTemplateSpecializationInfo
 Provides information about a dependent function-template specialization declaration. More...
struct  clang::DependentFunctionTemplateSpecializationInfo::CA
class  clang::RedeclarableTemplateDecl
 Declaration of a redeclarable template. More...
struct  clang::RedeclarableTemplateDecl::SpecEntryTraits< EntryType >
class  clang::RedeclarableTemplateDecl::SpecIterator< EntryType, _SETraits, _DeclType >
struct  clang::RedeclarableTemplateDecl::CommonBase
struct  clang::RedeclarableTemplateDecl::SpecEntryTraits< FunctionTemplateSpecializationInfo >
class  clang::FunctionTemplateDecl
 Declaration of a template function. More...
struct  clang::FunctionTemplateDecl::Common
 Data that is common to all of the declarations of a given function template. More...
class  clang::TemplateParmPosition
 Defines the position of a template parameter within a template parameter list. More...
class  clang::TemplateTypeParmDecl
 Declaration of a template type parameter. More...
class  clang::NonTypeTemplateParmDecl
class  clang::TemplateTemplateParmDecl
class  clang::ClassTemplateSpecializationDecl
 Represents a class template specialization, which refers to a class template with a given set of template arguments. More...
struct  clang::ClassTemplateSpecializationDecl::SpecializedPartialSpecialization
 Structure that stores information about a class template specialization that was instantiated from a class template partial specialization.
struct  clang::ClassTemplateSpecializationDecl::ExplicitSpecializationInfo
 Further info for explicit template specialization/instantiation.
class  clang::ClassTemplatePartialSpecializationDecl
class  clang::ClassTemplateDecl
 Declaration of a class template. More...
struct  clang::ClassTemplateDecl::Common
 Data that is common to all of the declarations of a given class template. More...
class  clang::FriendTemplateDecl
 Declaration of a friend template. More...
class  clang::TypeAliasTemplateDecl
 Declaration of an alias template. More...
class  clang::ClassScopeFunctionSpecializationDecl
 Declaration of a function specialization at template class scope. More...
class  clang::VarTemplateSpecializationDecl
 Represents a variable template specialization, which refers to a variable template with a given set of template arguments. More...
struct  clang::VarTemplateSpecializationDecl::SpecializedPartialSpecialization
 Structure that stores information about a variable template specialization that was instantiated from a variable template partial specialization.
struct  clang::VarTemplateSpecializationDecl::ExplicitSpecializationInfo
 Further info for explicit template specialization/instantiation.
class  clang::VarTemplatePartialSpecializationDecl
class  clang::VarTemplateDecl
 Declaration of a variable template. More...
struct  clang::VarTemplateDecl::Common
 Data that is common to all of the declarations of a given variable template. More...

Namespaces

namespace  clang

Typedefs

typedef llvm::PointerUnion3
< TemplateTypeParmDecl
*, NonTypeTemplateParmDecl
*, TemplateTemplateParmDecl * > 
clang::TemplateParameter
 Stores a template parameter of any kind.

Detailed Description

Defines the C++ template declaration subclasses.

Definition in file DeclTemplate.h.