clang 24.0.0git
clang::TemplateArgumentLoc Class Reference

Location wrapper for a TemplateArgument. More...

#include "clang/AST/TemplateBase.h"

Public Member Functions

 TemplateArgumentLoc ()
 TemplateArgumentLoc (const TemplateArgument &Argument, TemplateArgumentLocInfo Opaque)
 TemplateArgumentLoc (const TemplateArgument &Argument, TypeSourceInfo *TInfo)
 TemplateArgumentLoc (const TemplateArgument &Argument, Expr *E)
 TemplateArgumentLoc (ASTContext &Ctx, const TemplateArgument &Argument, SourceLocation TemplateKWLoc, NestedNameSpecifierLoc QualifierLoc, SourceLocation TemplateNameLoc, SourceLocation EllipsisLoc=SourceLocation())
SourceLocation getLocation () const
SourceRange getSourceRange () const LLVM_READONLY
const TemplateArgument & getArgument () const
TemplateArgumentLocInfo getLocInfo () const
TypeSourceInfo * getTypeSourceInfo () const
Expr * getSourceExpression () const
Expr * getSourceDeclExpression () const
Expr * getSourceNullPtrExpression () const
Expr * getSourceIntegralExpression () const
Expr * getSourceStructuralValueExpression () const
SourceLocation getTemplateKWLoc () const
NestedNameSpecifierLoc getTemplateQualifierLoc () const
SourceLocation getTemplateNameLoc () const
SourceLocation getTemplateEllipsisLoc () const

Detailed Description

Location wrapper for a TemplateArgument.

TemplateArgument is to TemplateArgumentLoc as Type is to TypeLoc.

Definition at line 542 of file TemplateBase.h.

Constructor & Destructor Documentation

◆ TemplateArgumentLoc() [1/5]

clang::TemplateArgumentLoc::TemplateArgumentLoc ( )
inline

Definition at line 547 of file TemplateBase.h.

◆ TemplateArgumentLoc() [2/5]

clang::TemplateArgumentLoc::TemplateArgumentLoc ( const TemplateArgument & Argument,
TemplateArgumentLocInfo Opaque )
inline

Definition at line 549 of file TemplateBase.h.

◆ TemplateArgumentLoc() [3/5]

clang::TemplateArgumentLoc::TemplateArgumentLoc ( const TemplateArgument & Argument,
TypeSourceInfo * TInfo )
inline

Definition at line 579 of file TemplateBase.h.

References clang::TemplateArgument::Type.

◆ TemplateArgumentLoc() [4/5]

◆ TemplateArgumentLoc() [5/5]

TemplateArgumentLoc::TemplateArgumentLoc ( ASTContext & Ctx,
const TemplateArgument & Argument,
SourceLocation TemplateKWLoc,
NestedNameSpecifierLoc QualifierLoc,
SourceLocation TemplateNameLoc,
SourceLocation EllipsisLoc = SourceLocation() )

Member Function Documentation

◆ getArgument()

const TemplateArgument & clang::TemplateArgumentLoc::getArgument ( ) const
inline

Definition at line 615 of file TemplateBase.h.

References getArgument().

Referenced by clang::Sema::ActOnTemplateTemplateParameter(), clang::ASTRecordWriter::AddTemplateArgumentLoc(), clang::ASTRecordWriter::AddTemplateArgumentLocInfo(), clang::Sema::CheckTemplateArgument(), clang::Sema::CheckTemplateArgumentList(), clang::Sema::CheckTemplateTemplateArgument(), clang::Sema::CheckTemplateTypeArgument(), clang::TreeTransform< Derived >::ComputeSizeOfPackExprWithoutSubstitution(), ConvertDeducedTemplateArguments(), clang::ODRDiagsEmitter::diagnoseMismatch(), clang::Sema::DiagnoseUnexpandedParameterPack(), clang::ASTNodeTraverser< Derived, NodeDelegateType >::dumpTemplateArgumentLoc(), getArgument(), getArgument(), clang::comments::getFunctionTypeLoc(), clang::Sema::getTemplateArgumentPackExpansionPattern(), clang::ASTNodeImporter::import(), IsStructurallyEquivalent(), clang::TreeTransform< Derived >::PreparePackForExpansion(), printArgument(), clang::TreeTransform< AdjustConstraints >::RebuildPackExpansion(), clang::NonTypeTemplateParmDecl::setDefaultArgument(), clang::TemplateTemplateParmDecl::setDefaultArgument(), clang::TemplateTypeParmDecl::setDefaultArgument(), clang::Sema::SubstConceptTemplateArguments(), SubstDefaultTemplateArgument(), SubstDefaultTemplateArgument(), clang::TreeTransform< Derived >::TransformTemplateArgument(), clang::RecursiveASTVisitor< Derived >::TraverseTemplateArgumentLoc(), clang::ASTNodeTraverser< Derived, NodeDelegateType >::VisitExplicitInstantiationDecl(), clang::JSONNodeDumper::VisitNonTypeTemplateParmDecl(), clang::JSONNodeDumper::VisitTemplateTemplateParmDecl(), clang::ASTNodeTraverser< Derived, NodeDelegateType >::VisitTemplateTypeParmDecl(), and clang::JSONNodeDumper::VisitTemplateTypeParmDecl().

◆ getLocation()

◆ getLocInfo()

◆ getSourceDeclExpression()

Expr * clang::TemplateArgumentLoc::getSourceDeclExpression ( ) const
inline

Definition at line 630 of file TemplateBase.h.

References clang::TemplateArgument::Declaration.

Referenced by getSourceRange().

◆ getSourceExpression()

◆ getSourceIntegralExpression()

Expr * clang::TemplateArgumentLoc::getSourceIntegralExpression ( ) const
inline

Definition at line 640 of file TemplateBase.h.

References clang::TemplateArgument::Integral.

Referenced by getSourceRange().

◆ getSourceNullPtrExpression()

Expr * clang::TemplateArgumentLoc::getSourceNullPtrExpression ( ) const
inline

Definition at line 635 of file TemplateBase.h.

References clang::TemplateArgument::NullPtr.

Referenced by getSourceRange().

◆ getSourceRange()

◆ getSourceStructuralValueExpression()

Expr * clang::TemplateArgumentLoc::getSourceStructuralValueExpression ( ) const
inline

Definition at line 645 of file TemplateBase.h.

References clang::TemplateArgument::StructuralValue.

Referenced by getSourceRange().

◆ getTemplateEllipsisLoc()

◆ getTemplateKWLoc()

◆ getTemplateNameLoc()

◆ getTemplateQualifierLoc()

◆ getTypeSourceInfo()


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