clang 17.0.0git
|
#include "clang/AST/TypeLoc.h"
Public Member Functions | |
AutoTypeKeyword | getAutoKeyword () const |
bool | isDecltypeAuto () const |
SourceLocation | getRParenLoc () const |
void | setRParenLoc (SourceLocation Loc) |
bool | isConstrained () const |
const NestedNameSpecifierLoc & | getNestedNameSpecifierLoc () const |
void | setNestedNameSpecifierLoc (NestedNameSpecifierLoc NNS) |
SourceLocation | getTemplateKWLoc () const |
void | setTemplateKWLoc (SourceLocation Loc) |
SourceLocation | getConceptNameLoc () const |
void | setConceptNameLoc (SourceLocation Loc) |
NamedDecl * | getFoundDecl () const |
void | setFoundDecl (NamedDecl *D) |
ConceptDecl * | getNamedConcept () const |
DeclarationNameInfo | getConceptNameInfo () const |
bool | hasExplicitTemplateArgs () const |
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 |
SourceRange | getLocalSourceRange () const |
void | copy (AutoTypeLoc Loc) |
void | initializeLocal (ASTContext &Context, SourceLocation Loc) |
unsigned | getExtraLocalDataSize () const |
unsigned | getExtraLocalDataAlignment () const |
![]() | |
unsigned | getLocalDataAlignment () const |
unsigned | getLocalDataSize () const |
void | copyLocal (AutoTypeLoc other) |
TypeLoc | getNextTypeLoc () const |
const AutoType * | getTypePtr () const |
![]() | |
const DeducedType * | getTypePtr () const |
![]() | |
SourceLocation | getNameLoc () const |
void | setNameLoc (SourceLocation Loc) |
SourceRange | getLocalSourceRange () const |
void | initializeLocal (ASTContext &Context, SourceLocation Loc) |
![]() | |
unsigned | getLocalDataAlignment () const |
unsigned | getLocalDataSize () const |
void | copyLocal (TypeSpecTypeLoc other) |
TypeLoc | getNextTypeLoc () const |
const Type * | getTypePtr () const |
![]() | |
UnqualTypeLoc ()=default | |
UnqualTypeLoc (const Type *Ty, void *Data) | |
const Type * | getTypePtr () const |
TypeLocClass | getTypeLocClass () const |
![]() | |
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 Type * | getTypePtr () 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. | |
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. | |
Additional Inherited Members | |
![]() | |
enum | { LocalDataSize = sizeof(TypeSpecLocInfo) , LocalDataAlignment = alignof(TypeSpecLocInfo) } |
![]() | |
enum | TypeLocClass { Qualified } |
The kinds of TypeLocs. More... | |
![]() | |
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. | |
![]() | |
unsigned | getExtraLocalDataSize () const |
unsigned | getExtraLocalDataAlignment () const |
AutoTypeLocInfo * | getLocalData () 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 |
![]() | |
unsigned | getExtraLocalDataSize () const |
unsigned | getExtraLocalDataAlignment () const |
TypeSpecLocInfo * | getLocalData () 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 |
![]() | |
const void * | Ty = nullptr |
void * | Data = nullptr |
|
inline |
Definition at line 2218 of file TypeLoc.h.
References clang::TypeLoc::Data, Data, clang::TypeLoc::getFullDataSize(), and memcpy().
|
inline |
Definition at line 2203 of file TypeLoc.h.
References getArgLocInfo(), and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr().
Referenced by InventTemplateParameter().
|
inline |
Definition at line 2199 of file TypeLoc.h.
Referenced by getArgLoc().
|
inline |
Definition at line 2121 of file TypeLoc.h.
References clang::AutoType::getKeyword(), and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr().
Referenced by clang::Sema::AttachTypeConstraint().
DeclarationNameInfo AutoTypeLoc::getConceptNameInfo | ( | ) | const |
Definition at line 624 of file TypeLoc.cpp.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and getNamedConcept().
Referenced by clang::Sema::AttachTypeConstraint(), and InventTemplateParameter().
|
inline |
Definition at line 2149 of file TypeLoc.h.
References clang::AutoTypeLocInfo::ConceptNameLoc, and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData().
Referenced by getLocalSourceRange().
|
inline |
|
inline |
Definition at line 2226 of file TypeLoc.h.
References getNumArgs().
|
inline |
Definition at line 2157 of file TypeLoc.h.
References clang::AutoTypeLocInfo::FoundDecl, and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData().
|
inline |
Definition at line 2175 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::LAngleLoc.
Referenced by clang::Sema::AttachTypeConstraint(), and InventTemplateParameter().
|
inline |
Definition at line 2208 of file TypeLoc.h.
References clang::NestedNameSpecifierLoc::getBeginLoc(), getConceptNameLoc(), clang::TypeSpecTypeLoc::getNameLoc(), getNestedNameSpecifierLoc(), getRParenLoc(), getTemplateKWLoc(), isConstrained(), isDecltypeAuto(), and clang::SourceLocation::isValid().
|
inline |
Definition at line 2165 of file TypeLoc.h.
References clang::AutoType::getTypeConstraintConcept(), and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr().
Referenced by clang::Sema::AttachTypeConstraint(), getConceptNameInfo(), and InventTemplateParameter().
|
inline |
Definition at line 2133 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::NestedNameSpec.
Referenced by clang::Sema::AttachTypeConstraint(), getLocalSourceRange(), and InventTemplateParameter().
|
inline |
Definition at line 2191 of file TypeLoc.h.
References clang::AutoType::getTypeConstraintArguments(), and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr().
Referenced by getExtraLocalDataSize(), and InventTemplateParameter().
|
inline |
Definition at line 2183 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::RAngleLoc.
Referenced by clang::Sema::AttachTypeConstraint(), and InventTemplateParameter().
|
inline |
Definition at line 2126 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::RParenLoc.
Referenced by getLocalSourceRange().
|
inline |
Definition at line 2141 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::TemplateKWLoc.
Referenced by getLocalSourceRange().
|
inline |
Definition at line 2171 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), clang::SourceLocation::isValid(), and clang::AutoTypeLocInfo::LAngleLoc.
Referenced by InventTemplateParameter().
void AutoTypeLoc::initializeLocal | ( | ASTContext & | Context, |
SourceLocation | Loc | ||
) |
Definition at line 629 of file TypeLoc.cpp.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr(), clang::TemplateSpecializationTypeLoc::initializeArgLocs(), setConceptNameLoc(), setFoundDecl(), setLAngleLoc(), clang::TypeSpecTypeLoc::setNameLoc(), setNestedNameSpecifierLoc(), setRAngleLoc(), setRParenLoc(), and setTemplateKWLoc().
|
inline |
Definition at line 2129 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr(), and clang::AutoType::isConstrained().
Referenced by getLocalSourceRange().
|
inline |
Definition at line 2125 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getTypePtr(), and clang::AutoType::isDecltypeAuto().
Referenced by getLocalSourceRange().
|
inline |
|
inline |
Definition at line 2153 of file TypeLoc.h.
References clang::AutoTypeLocInfo::ConceptNameLoc, and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData().
Referenced by initializeLocal().
|
inline |
Definition at line 2161 of file TypeLoc.h.
References clang::AutoTypeLocInfo::FoundDecl, and clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData().
Referenced by initializeLocal().
|
inline |
Definition at line 2179 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::LAngleLoc.
Referenced by initializeLocal().
|
inline |
Definition at line 2137 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::NestedNameSpec.
Referenced by initializeLocal().
|
inline |
Definition at line 2187 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::RAngleLoc.
Referenced by initializeLocal().
|
inline |
Definition at line 2127 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::RParenLoc.
Referenced by initializeLocal().
|
inline |
Definition at line 2145 of file TypeLoc.h.
References clang::ConcreteTypeLoc< DeducedTypeLoc, AutoTypeLoc, AutoType, AutoTypeLocInfo >::getLocalData(), and clang::AutoTypeLocInfo::TemplateKWLoc.
Referenced by initializeLocal().