clang
7.0.0
|
Type source information for an attributed type. More...
#include "clang/AST/TypeLoc.h"
Public Member Functions | |
AttributedType::Kind | getAttrKind () const |
bool | hasAttrExprOperand () const |
bool | hasAttrEnumOperand () const |
bool | hasAttrOperand () const |
bool | isQualifier () const |
TypeLoc | getModifiedLoc () const |
The modified type, which is generally canonically different from the attribute type. More... | |
SourceLocation | getAttrNameLoc () const |
The location of the attribute name, i.e. More... | |
void | setAttrNameLoc (SourceLocation loc) |
Expr * | getAttrExprOperand () const |
The attribute's expression operand, if it has one. More... | |
void | setAttrExprOperand (Expr *e) |
SourceLocation | getAttrEnumOperandLoc () const |
The location of the attribute's enumerated operand, if it has one. More... | |
void | setAttrEnumOperandLoc (SourceLocation loc) |
SourceRange | getAttrOperandParensRange () const |
The location of the parentheses around the operand, if there is an operand. More... | |
void | setAttrOperandParensRange (SourceRange range) |
SourceRange | getLocalSourceRange () const |
void | initializeLocal (ASTContext &Context, SourceLocation loc) |
QualType | getInnerType () const |
![]() | |
unsigned | getLocalDataAlignment () const |
unsigned | getLocalDataSize () const |
void | copyLocal (AttributedTypeLoc other) |
TypeLoc | getNextTypeLoc () const |
const AttributedType * | 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. More... | |
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. More... | |
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. More... | |
TypeLocClass | getTypeLocClass () const |
bool | isNull () const |
operator bool () const | |
QualType | getType () const |
Get the type for which this source info wrapper provides information. More... | |
const Type * | getTypePtr () const |
void * | getOpaqueData () const |
Get the pointer where source information is stored. More... | |
SourceLocation | getBeginLoc () const |
Get the begin source location. More... | |
SourceLocation | getEndLoc () const |
Get the end source location. More... | |
SourceRange | getSourceRange () const LLVM_READONLY |
Get the full source range. More... | |
SourceLocation | getLocStart () const LLVM_READONLY |
SourceLocation | getLocEnd () const LLVM_READONLY |
SourceRange | getLocalSourceRange () const |
Get the local source range. More... | |
unsigned | getFullDataSize () const |
Returns the size of the type source info data block. More... | |
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". More... | |
UnqualTypeLoc | getUnqualifiedLoc () const |
Skips past any qualifiers, if this is qualified. More... | |
TypeLoc | IgnoreParens () const |
TypeLoc | findExplicitQualifierLoc () const |
Find a type with the location of an explicit type qualifier. More... | |
void | initialize (ASTContext &Context, SourceLocation Loc) const |
Initializes this to state that every location in this type is the given location. More... | |
void | initializeFullCopy (TypeLoc Other) |
Initializes this by copying its information from another TypeLoc of the same type. More... | |
void | initializeFullCopy (TypeLoc Other, unsigned Size) |
Initializes this by copying its information from another TypeLoc of the same type. More... | |
void | copy (TypeLoc other) |
Copies the other type loc into this one. More... | |
SourceLocation | findNullabilityLoc () const |
Find the location of the nullability specifier (__nonnull, __nullable, or __null_unspecifier), if there is one. More... | |
Additional Inherited Members | |
![]() | |
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. More... | |
static unsigned | getLocalAlignmentForType (QualType Ty) |
Returns the alignment of type source info data block for the given type. More... | |
![]() | |
unsigned | getExtraLocalDataSize () const |
unsigned | getExtraLocalDataAlignment () const |
AttributedLocInfo * | 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. More... | |
void * | getNonLocalData () const |
HasNoInnerType | getInnerType () const |
TypeLoc | getInnerTypeLoc () const |
![]() | |
const void * | Ty = nullptr |
void * | Data = nullptr |
|
inline |
The location of the attribute's enumerated operand, if it has one.
void * attribute((objc_gc(weak))) ^~~~
Definition at line 919 of file TypeLoc.h.
References clang::SourceLocation::getFromRawEncoding().
Referenced by clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType().
|
inline |
The attribute's expression operand, if it has one.
void *cur_thread attribute((address_space(21))) ^~
Definition at line 907 of file TypeLoc.h.
Referenced by clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType().
|
inline |
Definition at line 864 of file TypeLoc.h.
References clang::TypeLoc::getTypePtr().
Referenced by fillAttributedTypeLoc(), and implicitObjectParamIsLifetimeBound().
|
inline |
The location of the attribute name, i.e.
attribute((regparm(1000))) ^~~~~~~
Definition at line 897 of file TypeLoc.h.
Referenced by clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType().
|
inline |
The location of the parentheses around the operand, if there is an operand.
void * attribute((objc_gc(weak))) ^ ^
Definition at line 932 of file TypeLoc.h.
Referenced by clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType().
|
inline |
Definition at line 968 of file TypeLoc.h.
References clang::TypeLoc::getTypePtr().
|
inline |
Definition at line 941 of file TypeLoc.h.
References clang::SourceRange::setEnd().
|
inline |
The modified type, which is generally canonically different from the attribute type.
int main(int, char**) attribute((noreturn)) ~~~ ~~~~~~~~~~~~~
Definition at line 890 of file TypeLoc.h.
Referenced by implicitObjectParamIsLifetimeBound(), and clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType().
|
inline |
Definition at line 873 of file TypeLoc.h.
References clang::AttributedType::FirstEnumOperandKind, and clang::AttributedType::LastEnumOperandKind.
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().
|
inline |
Definition at line 868 of file TypeLoc.h.
References clang::AttributedType::FirstExprOperandKind, and clang::AttributedType::LastExprOperandKind.
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().
|
inline |
Definition at line 878 of file TypeLoc.h.
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().
|
inline |
|
inline |
Definition at line 882 of file TypeLoc.h.
References clang::TypeLoc::getTypePtr().
|
inline |
Definition at line 923 of file TypeLoc.h.
References clang::SourceLocation::getRawEncoding().
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().
|
inline |
Definition at line 911 of file TypeLoc.h.
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().
|
inline |
Definition at line 900 of file TypeLoc.h.
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().
|
inline |
Definition at line 936 of file TypeLoc.h.
Referenced by setAttributedTypeLoc(), clang::TreeTransform< Derived >::TransformDependentTemplateSpecializationType(), and clang::TypeLocReader::VisitFunctionTypeLoc().