clang  3.7.0
Classes | Public Member Functions | List of all members
clang::DependentFunctionTemplateSpecializationInfo Class Reference

Provides information about a dependent function-template specialization declaration. More...

#include <DeclTemplate.h>

Collaboration diagram for clang::DependentFunctionTemplateSpecializationInfo:
[legend]

Public Member Functions

 DependentFunctionTemplateSpecializationInfo (const UnresolvedSetImpl &Templates, const TemplateArgumentListInfo &TemplateArgs)
 
unsigned getNumTemplates () const
 Returns the number of function templates that this might be a specialization of. More...
 
FunctionTemplateDeclgetTemplate (unsigned I) const
 Returns the i'th template candidate. More...
 
const TemplateArgumentLocgetTemplateArgs () const
 Returns the explicit template arguments that were given. More...
 
unsigned getNumTemplateArgs () const
 Returns the number of explicit template arguments that were given. More...
 
const TemplateArgumentLocgetTemplateArg (unsigned I) const
 Returns the nth template argument. More...
 
SourceLocation getLAngleLoc () const
 
SourceLocation getRAngleLoc () const
 

Detailed Description

Provides information about a dependent function-template specialization declaration.

Since explicit function template specialization and instantiation declarations can only appear in namespace scope, and you can only specialize a member of a fully-specialized class, the only way to get one of these is in a friend declaration like the following:

template \<class T> void foo(T);
template \<class T> class A {
friend void foo<>(T);
};

Definition at line 545 of file DeclTemplate.h.

Constructor & Destructor Documentation

DependentFunctionTemplateSpecializationInfo::DependentFunctionTemplateSpecializationInfo ( const UnresolvedSetImpl Templates,
const TemplateArgumentListInfo TemplateArgs 
)

Member Function Documentation

SourceLocation clang::DependentFunctionTemplateSpecializationInfo::getLAngleLoc ( ) const
inline

Definition at line 602 of file DeclTemplate.h.

Referenced by clang::ASTDeclWriter::VisitFunctionDecl().

unsigned clang::DependentFunctionTemplateSpecializationInfo::getNumTemplateArgs ( ) const
inline

Returns the number of explicit template arguments that were given.

Definition at line 592 of file DeclTemplate.h.

Referenced by clang::ASTDeclWriter::VisitFunctionDecl().

unsigned clang::DependentFunctionTemplateSpecializationInfo::getNumTemplates ( ) const
inline

Returns the number of function templates that this might be a specialization of.

Definition at line 575 of file DeclTemplate.h.

Referenced by clang::ASTDeclWriter::VisitFunctionDecl().

SourceLocation clang::DependentFunctionTemplateSpecializationInfo::getRAngleLoc ( ) const
inline

Definition at line 606 of file DeclTemplate.h.

Referenced by clang::ASTDeclWriter::VisitFunctionDecl().

FunctionTemplateDecl* clang::DependentFunctionTemplateSpecializationInfo::getTemplate ( unsigned  I) const
inline

Returns the i'th template candidate.

Definition at line 580 of file DeclTemplate.h.

Referenced by clang::ASTDeclWriter::VisitFunctionDecl().

const TemplateArgumentLoc& clang::DependentFunctionTemplateSpecializationInfo::getTemplateArg ( unsigned  I) const
inline

Returns the nth template argument.

Definition at line 597 of file DeclTemplate.h.

Referenced by clang::ASTDeclWriter::VisitFunctionDecl().

const TemplateArgumentLoc* clang::DependentFunctionTemplateSpecializationInfo::getTemplateArgs ( ) const
inline

Returns the explicit template arguments that were given.

Definition at line 586 of file DeclTemplate.h.

Referenced by DependentFunctionTemplateSpecializationInfo().

Member Data Documentation

void* clang::DependentFunctionTemplateSpecializationInfo::Aligner

Definition at line 557 of file DeclTemplate.h.

struct CA clang::DependentFunctionTemplateSpecializationInfo::d

Definition at line 558 of file DeclTemplate.h.

Referenced by DependentFunctionTemplateSpecializationInfo().


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