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