clang 23.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 TemplateArgumentgetArgument () const
TemplateArgumentLocInfo getLocInfo () const
TypeSourceInfogetTypeSourceInfo () const
ExprgetSourceExpression () const
ExprgetSourceDeclExpression () const
ExprgetSourceNullPtrExpression () const
ExprgetSourceIntegralExpression () const
ExprgetSourceStructuralValueExpression () 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 551 of file TemplateBase.h.

Constructor & Destructor Documentation

◆ TemplateArgumentLoc() [1/5]

clang::TemplateArgumentLoc::TemplateArgumentLoc ( )
inline

Definition at line 556 of file TemplateBase.h.

◆ TemplateArgumentLoc() [2/5]

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

Definition at line 558 of file TemplateBase.h.

◆ TemplateArgumentLoc() [3/5]

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

Definition at line 588 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 624 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::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 639 of file TemplateBase.h.

References clang::TemplateArgument::Declaration.

Referenced by getSourceRange().

◆ getSourceExpression()

◆ getSourceIntegralExpression()

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

Definition at line 649 of file TemplateBase.h.

References clang::TemplateArgument::Integral.

Referenced by getSourceRange().

◆ getSourceNullPtrExpression()

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

Definition at line 644 of file TemplateBase.h.

References clang::TemplateArgument::NullPtr.

Referenced by getSourceRange().

◆ getSourceRange()

◆ getSourceStructuralValueExpression()

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

Definition at line 654 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: