clang API Documentation

Public Member Functions
clang::DependentFunctionTemplateSpecializationInfo Class Reference

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: More...

#include <DeclTemplate.h>

Collaboration diagram for clang::DependentFunctionTemplateSpecializationInfo:
Collaboration graph
[legend]

List of all members.

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.
FunctionTemplateDeclgetTemplate (unsigned I) const
 Returns the i'th template candidate.
const TemplateArgumentLocgetTemplateArgs () const
 Returns the explicit template arguments that were given.
unsigned getNumTemplateArgs () const
 Returns the number of explicit template arguments that were given.
const TemplateArgumentLocgetTemplateArg (unsigned I) const
 Returns the nth template argument.
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 417 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 473 of file DeclTemplate.h.

References clang::SourceRange::getBegin().

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

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

Returns the number of explicit template arguments that were given.

Definition at line 463 of file DeclTemplate.h.

References d.

Referenced by getTemplateArg(), and 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 446 of file DeclTemplate.h.

References d.

Referenced by getTemplate(), getTemplateArgs(), and clang::ASTDeclWriter::VisitFunctionDecl().

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

Definition at line 477 of file DeclTemplate.h.

References clang::SourceRange::getEnd().

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

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

Returns the i'th template candidate.

Definition at line 451 of file DeclTemplate.h.

References getNumTemplates().

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

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

Returns the nth template argument.

Definition at line 468 of file DeclTemplate.h.

References getNumTemplateArgs(), and getTemplateArgs().

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

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

Returns the explicit template arguments that were given.

Definition at line 457 of file DeclTemplate.h.

References getNumTemplates().

Referenced by DependentFunctionTemplateSpecializationInfo(), and getTemplateArg().


Member Data Documentation

Definition at line 421 of file DeclTemplate.h.

The number of template arguments.

Definition at line 428 of file DeclTemplate.h.

The number of potential template candidates.

Definition at line 425 of file DeclTemplate.h.


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