clang API Documentation

Public Member Functions | Static Public Member Functions | Friends
clang::ClassScopeFunctionSpecializationDecl Class Reference

Declaration of a function specialization at template class scope. More...

#include <DeclTemplate.h>

Inheritance diagram for clang::ClassScopeFunctionSpecializationDecl:
Inheritance graph
[legend]
Collaboration diagram for clang::ClassScopeFunctionSpecializationDecl:
Collaboration graph
[legend]

List of all members.

Public Member Functions

CXXMethodDeclgetSpecialization () const
bool hasExplicitTemplateArgs () const
const TemplateArgumentListInfotemplateArgs () const

Static Public Member Functions

static
ClassScopeFunctionSpecializationDecl
Create (ASTContext &C, DeclContext *DC, SourceLocation Loc, CXXMethodDecl *FD, bool HasExplicitTemplateArgs, TemplateArgumentListInfo TemplateArgs)
static
ClassScopeFunctionSpecializationDecl
CreateDeserialized (ASTContext &Context, unsigned ID)
static bool classof (const Decl *D)
static bool classofKind (Kind K)

Friends

class ASTDeclReader
class ASTDeclWriter

Detailed Description

Declaration of a function specialization at template class scope.

This is a non-standard extension needed to support MSVC.

For example:

 template <class T>
 class A {
    template <class U> void foo(U a) { }
    template<> void foo(int a) { }
 }

"template<> foo(int a)" will be saved in Specialization as a normal CXXMethodDecl. Then during an instantiation of class A, it will be transformed into an actual function specialization.

Definition at line 2187 of file DeclTemplate.h.


Member Function Documentation

static bool clang::ClassScopeFunctionSpecializationDecl::classof ( const Decl D) [inline, static]

Definition at line 2223 of file DeclTemplate.h.

References classofKind(), and clang::Decl::getKind().

Reimplemented from clang::Decl.

Definition at line 2224 of file DeclTemplate.h.

Referenced by classof().

static ClassScopeFunctionSpecializationDecl* clang::ClassScopeFunctionSpecializationDecl::Create ( ASTContext C,
DeclContext DC,
SourceLocation  Loc,
CXXMethodDecl FD,
bool  HasExplicitTemplateArgs,
TemplateArgumentListInfo  TemplateArgs 
) [inline, static]

Definition at line 2209 of file DeclTemplate.h.

References AttributeLangSupport::C.

Referenced by clang::Sema::ActOnFunctionDeclarator().

Definition at line 916 of file DeclTemplate.cpp.

References AttributeLangSupport::C.

Definition at line 2206 of file DeclTemplate.h.

Definition at line 2207 of file DeclTemplate.h.


Friends And Related Function Documentation

friend class ASTDeclReader [friend]

Reimplemented from clang::Decl.

Definition at line 2228 of file DeclTemplate.h.

friend class ASTDeclWriter [friend]

Reimplemented from clang::Decl.

Definition at line 2229 of file DeclTemplate.h.


The documentation for this class was generated from the following files: