|
clang
5.0.0
|
Represents an explicit template argument list in C++, e.g., the "<int>" in "sort<int>". More...
#include "clang/AST/TemplateBase.h"
Public Member Functions | |
| void | initializeFrom (SourceLocation TemplateKWLoc, const TemplateArgumentListInfo &List, TemplateArgumentLoc *OutArgArray) |
| void | initializeFrom (SourceLocation TemplateKWLoc, const TemplateArgumentListInfo &List, TemplateArgumentLoc *OutArgArray, bool &Dependent, bool &InstantiationDependent, bool &ContainsUnexpandedParameterPack) |
| void | initializeFrom (SourceLocation TemplateKWLoc) |
| void | copyInto (const TemplateArgumentLoc *ArgArray, TemplateArgumentListInfo &List) const |
Public Attributes | |
| SourceLocation | LAngleLoc |
| The source location of the left angle bracket ('<'). More... | |
| SourceLocation | RAngleLoc |
| The source location of the right angle bracket ('>'). More... | |
| SourceLocation | TemplateKWLoc |
| The source location of the template keyword; this is used as part of the representation of qualified identifiers, such as S<T>::template apply<T>. More... | |
| unsigned | NumTemplateArgs |
| The number of template arguments in TemplateArgs. More... | |
Represents an explicit template argument list in C++, e.g., the "<int>" in "sort<int>".
It is intended to be used as a trailing object on AST nodes, and as such, doesn't contain the array of TemplateArgumentLoc itself, but expects the containing object to also provide storage for that.
Definition at line 616 of file TemplateBase.h.
| void ASTTemplateKWAndArgsInfo::copyInto | ( | const TemplateArgumentLoc * | ArgArray, |
| TemplateArgumentListInfo & | List | ||
| ) | const |
Definition at line 610 of file TemplateBase.cpp.
References clang::TemplateArgumentListInfo::addArgument(), I, LAngleLoc, NumTemplateArgs, RAngleLoc, clang::TemplateArgumentListInfo::setLAngleLoc(), and clang::TemplateArgumentListInfo::setRAngleLoc().
Referenced by clang::OverloadExpr::copyTemplateArgumentsInto().
| void ASTTemplateKWAndArgsInfo::initializeFrom | ( | SourceLocation | TemplateKWLoc, |
| const TemplateArgumentListInfo & | List, | ||
| TemplateArgumentLoc * | OutArgArray | ||
| ) |
Definition at line 569 of file TemplateBase.cpp.
References clang::TemplateArgumentListInfo::getLAngleLoc(), clang::TemplateArgumentListInfo::getRAngleLoc(), LAngleLoc, NumTemplateArgs, RAngleLoc, clang::TemplateArgumentListInfo::size(), and TemplateKWLoc.
Referenced by clang::OverloadExpr::OverloadExpr(), and clang::ASTStmtReader::ReadTemplateKWAndArgsInfo().
| void ASTTemplateKWAndArgsInfo::initializeFrom | ( | SourceLocation | TemplateKWLoc, |
| const TemplateArgumentListInfo & | List, | ||
| TemplateArgumentLoc * | OutArgArray, | ||
| bool & | Dependent, | ||
| bool & | InstantiationDependent, | ||
| bool & | ContainsUnexpandedParameterPack | ||
| ) |
Definition at line 589 of file TemplateBase.cpp.
References clang::TemplateArgumentListInfo::getLAngleLoc(), clang::TemplateArgumentListInfo::getRAngleLoc(), LAngleLoc, NumTemplateArgs, RAngleLoc, clang::TemplateArgumentListInfo::size(), and TemplateKWLoc.
| void ASTTemplateKWAndArgsInfo::initializeFrom | ( | SourceLocation | TemplateKWLoc | ) |
Definition at line 581 of file TemplateBase.cpp.
References clang::SourceLocation::isValid(), LAngleLoc, NumTemplateArgs, RAngleLoc, and TemplateKWLoc.
| SourceLocation clang::ASTTemplateKWAndArgsInfo::LAngleLoc |
The source location of the left angle bracket ('<').
Definition at line 618 of file TemplateBase.h.
Referenced by clang::ASTStmtWriter::AddTemplateKWAndArgsInfo(), copyInto(), clang::OverloadExpr::getLAngleLoc(), and initializeFrom().
| unsigned clang::ASTTemplateKWAndArgsInfo::NumTemplateArgs |
The number of template arguments in TemplateArgs.
Definition at line 630 of file TemplateBase.h.
Referenced by clang::ASTStmtWriter::AddTemplateKWAndArgsInfo(), copyInto(), clang::OverloadExpr::getNumTemplateArgs(), and initializeFrom().
| SourceLocation clang::ASTTemplateKWAndArgsInfo::RAngleLoc |
The source location of the right angle bracket ('>').
Definition at line 621 of file TemplateBase.h.
Referenced by clang::ASTStmtWriter::AddTemplateKWAndArgsInfo(), copyInto(), clang::OverloadExpr::getRAngleLoc(), and initializeFrom().
| SourceLocation clang::ASTTemplateKWAndArgsInfo::TemplateKWLoc |
The source location of the template keyword; this is used as part of the representation of qualified identifiers, such as S<T>::template apply<T>.
Will be empty if this expression does not have a template keyword.
Definition at line 627 of file TemplateBase.h.
Referenced by clang::ASTStmtWriter::AddTemplateKWAndArgsInfo(), clang::OverloadExpr::getTemplateKeywordLoc(), and initializeFrom().
1.8.6