clang 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
clang::TemplateSpecializationTypeLoc Class Reference

#include "clang/AST/TypeLoc.h"

Inheritance diagram for clang::TemplateSpecializationTypeLoc:
Inheritance graph
[legend]

Public Member Functions

SourceLocation getTemplateKeywordLoc () const
 
void setTemplateKeywordLoc (SourceLocation Loc)
 
SourceLocation getLAngleLoc () const
 
void setLAngleLoc (SourceLocation Loc)
 
SourceLocation getRAngleLoc () const
 
void setRAngleLoc (SourceLocation Loc)
 
unsigned getNumArgs () const
 
void setArgLocInfo (unsigned i, TemplateArgumentLocInfo AI)
 
TemplateArgumentLocInfo getArgLocInfo (unsigned i) const
 
TemplateArgumentLoc getArgLoc (unsigned i) const
 
SourceLocation getTemplateNameLoc () const
 
void setTemplateNameLoc (SourceLocation Loc)
 
void copy (TemplateSpecializationTypeLoc Loc)
 
SourceRange getLocalSourceRange () const
 
void initializeLocal (ASTContext &Context, SourceLocation Loc)
 
unsigned getExtraLocalDataSize () const
 
unsigned getExtraLocalDataAlignment () const
 
- Public Member Functions inherited from clang::ConcreteTypeLoc< UnqualTypeLoc, TemplateSpecializationTypeLoc, TemplateSpecializationType, TemplateSpecializationLocInfo >
unsigned getLocalDataAlignment () const
 
unsigned getLocalDataSize () const
 
void copyLocal (TemplateSpecializationTypeLoc other)
 
TypeLoc getNextTypeLoc () const
 
const TemplateSpecializationTypegetTypePtr () const
 
- Public Member Functions inherited from clang::UnqualTypeLoc
 UnqualTypeLoc ()=default
 
 UnqualTypeLoc (const Type *Ty, void *Data)
 
const TypegetTypePtr () const
 
TypeLocClass getTypeLocClass () const
 
- Public Member Functions inherited from clang::TypeLoc
 TypeLoc ()=default
 
 TypeLoc (QualType ty, void *opaqueData)
 
 TypeLoc (const Type *ty, void *opaqueData)
 
template<typename T >
T castAs () const
 Convert to the specified TypeLoc type, asserting that this TypeLoc is of the desired type.
 
template<typename T >
T getAs () const
 Convert to the specified TypeLoc type, returning a null TypeLoc if this TypeLoc is not of the desired type.
 
template<typename T >
T getAsAdjusted () const
 Convert to the specified TypeLoc type, returning a null TypeLoc if this TypeLoc is not of the desired type.
 
TypeLocClass getTypeLocClass () const
 
bool isNull () const
 
 operator bool () const
 
QualType getType () const
 Get the type for which this source info wrapper provides information.
 
const TypegetTypePtr () const
 
void * getOpaqueData () const
 Get the pointer where source information is stored.
 
SourceLocation getBeginLoc () const
 Get the begin source location.
 
SourceLocation getEndLoc () const
 Get the end source location.
 
SourceRange getSourceRange () const LLVM_READONLY
 Get the full source range.
 
SourceRange getLocalSourceRange () const
 Get the local source range.
 
unsigned getFullDataSize () const
 Returns the size of the type source info data block.
 
TypeLoc getNextTypeLoc () const
 Get the next TypeLoc pointed by this TypeLoc, e.g for "int*" the TypeLoc is a PointerLoc and next TypeLoc is for "int".
 
UnqualTypeLoc getUnqualifiedLoc () const
 Skips past any qualifiers, if this is qualified.
 
TypeLoc IgnoreParens () const
 
TypeLoc findExplicitQualifierLoc () const
 Find a type with the location of an explicit type qualifier.
 
AutoTypeLoc getContainedAutoTypeLoc () const
 Get the typeloc of an AutoType whose type will be deduced for a variable with an initializer of this type.
 
SourceLocation getTemplateKeywordLoc () const
 Get the SourceLocation of the template keyword (if any).
 
void initialize (ASTContext &Context, SourceLocation Loc) const
 Initializes this to state that every location in this type is the given location.
 
void initializeFullCopy (TypeLoc Other)
 Initializes this by copying its information from another TypeLoc of the same type.
 
void initializeFullCopy (TypeLoc Other, unsigned Size)
 Initializes this by copying its information from another TypeLoc of the same type.
 
void copy (TypeLoc other)
 Copies the other type loc into this one.
 
SourceLocation findNullabilityLoc () const
 Find the location of the nullability specifier (__nonnull, __nullable, or __null_unspecifier), if there is one.
 
void dump () const
 
void dump (llvm::raw_ostream &, const ASTContext &) const
 

Static Public Member Functions

static void initializeArgLocs (ASTContext &Context, ArrayRef< TemplateArgument > Args, TemplateArgumentLocInfo *ArgInfos, SourceLocation Loc)
 
- Static Public Member Functions inherited from clang::TypeLoc
static unsigned getFullDataSizeForType (QualType Ty)
 Returns the size of type source info data block for the given type.
 
static unsigned getLocalAlignmentForType (QualType Ty)
 Returns the alignment of type source info data block for the given type.
 

Additional Inherited Members

- Public Types inherited from clang::TypeLoc
enum  TypeLocClass { Qualified }
 The kinds of TypeLocs. More...
 
- Protected Member Functions inherited from clang::ConcreteTypeLoc< UnqualTypeLoc, TemplateSpecializationTypeLoc, TemplateSpecializationType, TemplateSpecializationLocInfo >
unsigned getExtraLocalDataSize () const
 
unsigned getExtraLocalDataAlignment () const
 
TemplateSpecializationLocInfogetLocalData () const
 
void * getExtraLocalData () const
 Gets a pointer past the Info structure; useful for classes with local data that can't be captured in the Info (e.g.
 
void * getNonLocalData () const
 
HasNoInnerType getInnerType () const
 
TypeLoc getInnerTypeLoc () const
 
- Protected Attributes inherited from clang::TypeLoc
const void * Ty = nullptr
 
void * Data = nullptr
 

Detailed Description

Definition at line 1684 of file TypeLoc.h.

Member Function Documentation

◆ copy()

void clang::TemplateSpecializationTypeLoc::copy ( TemplateSpecializationTypeLoc  Loc)
inline
  • Copy the location information from the given info.

Definition at line 1740 of file TypeLoc.h.

References clang::Data, clang::TypeLoc::getFullDataSize(), Loc, and memcpy().

◆ getArgLoc()

TemplateArgumentLoc clang::TemplateSpecializationTypeLoc::getArgLoc ( unsigned  i) const
inline

◆ getArgLocInfo()

TemplateArgumentLocInfo clang::TemplateSpecializationTypeLoc::getArgLocInfo ( unsigned  i) const
inline

Definition at line 1722 of file TypeLoc.h.

Referenced by getArgLoc().

◆ getExtraLocalDataAlignment()

unsigned clang::TemplateSpecializationTypeLoc::getExtraLocalDataAlignment ( ) const
inline

Definition at line 1776 of file TypeLoc.h.

◆ getExtraLocalDataSize()

unsigned clang::TemplateSpecializationTypeLoc::getExtraLocalDataSize ( ) const
inline

Definition at line 1772 of file TypeLoc.h.

References getNumArgs().

◆ getLAngleLoc()

SourceLocation clang::TemplateSpecializationTypeLoc::getLAngleLoc ( ) const
inline

◆ getLocalSourceRange()

SourceRange clang::TemplateSpecializationTypeLoc::getLocalSourceRange ( ) const
inline

Definition at line 1751 of file TypeLoc.h.

References getRAngleLoc(), getTemplateKeywordLoc(), and getTemplateNameLoc().

◆ getNumArgs()

unsigned clang::TemplateSpecializationTypeLoc::getNumArgs ( ) const
inline

◆ getRAngleLoc()

SourceLocation clang::TemplateSpecializationTypeLoc::getRAngleLoc ( ) const
inline

◆ getTemplateKeywordLoc()

SourceLocation clang::TemplateSpecializationTypeLoc::getTemplateKeywordLoc ( ) const
inline

◆ getTemplateNameLoc()

SourceLocation clang::TemplateSpecializationTypeLoc::getTemplateNameLoc ( ) const
inline

◆ initializeArgLocs()

void TemplateSpecializationTypeLoc::initializeArgLocs ( ASTContext Context,
ArrayRef< TemplateArgument Args,
TemplateArgumentLocInfo ArgInfos,
SourceLocation  Loc 
)
static

◆ initializeLocal()

void clang::TemplateSpecializationTypeLoc::initializeLocal ( ASTContext Context,
SourceLocation  Loc 
)
inline

◆ setArgLocInfo()

void clang::TemplateSpecializationTypeLoc::setArgLocInfo ( unsigned  i,
TemplateArgumentLocInfo  AI 
)
inline

◆ setLAngleLoc()

void clang::TemplateSpecializationTypeLoc::setLAngleLoc ( SourceLocation  Loc)
inline

◆ setRAngleLoc()

void clang::TemplateSpecializationTypeLoc::setRAngleLoc ( SourceLocation  Loc)
inline

◆ setTemplateKeywordLoc()

void clang::TemplateSpecializationTypeLoc::setTemplateKeywordLoc ( SourceLocation  Loc)
inline

◆ setTemplateNameLoc()

void clang::TemplateSpecializationTypeLoc::setTemplateNameLoc ( SourceLocation  Loc)
inline

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