clang 8.0.0

Public Member Functions | List of all members
clang::BuiltinTypeLoc Class Reference

Wrapper for source info for builtin types. More...

`#include "clang/AST/TypeLoc.h"`

Inheritance diagram for clang::BuiltinTypeLoc:
[legend]
Collaboration diagram for clang::BuiltinTypeLoc:
[legend]

## Public Member Functions
SourceLocation | getBuiltinLoc () const
void | setBuiltinLoc (SourceLocation Loc)
void | expandBuiltinRange (SourceRange Range)
SourceLocation | getNameLoc () const
WrittenBuiltinSpecs & | getWrittenBuiltinSpecs ()
const WrittenBuiltinSpecs & | getWrittenBuiltinSpecs () const
bool | needsExtraLocalData () const
unsigned | getExtraLocalDataSize () const
unsigned | getExtraLocalDataAlignment () const
SourceRange | getLocalSourceRange () const
TypeSpecifierSign | getWrittenSignSpec () const
bool | hasWrittenSignSpec () const
void | setWrittenSignSpec (TypeSpecifierSign written)
TypeSpecifierWidth | getWrittenWidthSpec () const
bool | hasWrittenWidthSpec () const
void | setWrittenWidthSpec (TypeSpecifierWidth written)
TypeSpecifierType | getWrittenTypeSpec () const
bool | hasWrittenTypeSpec () const
void | setWrittenTypeSpec (TypeSpecifierType written)
bool | hasModeAttr () const
void | setModeAttr (bool written)
void | initializeLocal (ASTContext &Context, SourceLocation Loc)
Public Member Functions inherited from clang::ConcreteTypeLoc< UnqualTypeLoc, BuiltinTypeLoc, BuiltinType, BuiltinLocInfo >
unsigned | getLocalDataAlignment () const
unsigned | getLocalDataSize () const
void | copyLocal (BuiltinTypeLoc other)
TypeLoc | getNextTypeLoc () const
const BuiltinType * | getTypePtr () const
Public Member Functions inherited from clang::UnqualTypeLoc
| UnqualTypeLoc ()=default
| UnqualTypeLoc (const Type *Ty, void *Data)
const Type * | getTypePtr () 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. 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...
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
Public Types inherited from clang::TypeLoc
enum | TypeLocClass { Qualified }
| The kinds of TypeLocs. More...
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. More...
static unsigned | getLocalAlignmentForType (QualType Ty)
| Returns the alignment of type source info data block for the given type. More...
Protected Member Functions inherited from clang::ConcreteTypeLoc< UnqualTypeLoc, BuiltinTypeLoc, BuiltinType, BuiltinLocInfo >
unsigned | getExtraLocalDataSize () const
unsigned | getExtraLocalDataAlignment () const
BuiltinLocInfo * | 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
Protected Attributes inherited from clang::TypeLoc
const void * | Ty = nullptr
void * | Data = nullptr

## Detailed Description

Wrapper for source info for builtin types.

Definition at line 544 of file TypeLoc.h.

## Member Function Documentation

## ◆ expandBuiltinRange()

void clang::BuiltinTypeLoc::expandBuiltinRange | ( | SourceRange | Range | ) |
| inline

Definition at line 557 of file TypeLoc.h.

References clang::SourceRange::getBegin(), clang::SourceRange::getEnd(), clang::SourceLocation::isValid(), max(), min(), clang::SourceRange::setBegin(), and clang::SourceRange::setEnd().

## ◆ getBuiltinLoc()

SourceLocation clang::BuiltinTypeLoc::getBuiltinLoc | ( |  | ) | const
| inline

Definition at line 549 of file TypeLoc.h.

Referenced by clang::TransformTypeSpecType().

## ◆ getExtraLocalDataAlignment()

unsigned clang::BuiltinTypeLoc::getExtraLocalDataAlignment | ( |  | ) | const
| inline

Definition at line 588 of file TypeLoc.h.

## ◆ getExtraLocalDataSize()

unsigned clang::BuiltinTypeLoc::getExtraLocalDataSize | ( |  | ) | const
| inline

Definition at line 584 of file TypeLoc.h.

## ◆ getLocalSourceRange()

SourceRange clang::BuiltinTypeLoc::getLocalSourceRange | ( |  | ) | const
| inline

Definition at line 592 of file TypeLoc.h.

## ◆ getNameLoc()

SourceLocation clang::BuiltinTypeLoc::getNameLoc | ( |  | ) | const
| inline

Definition at line 567 of file TypeLoc.h.

## ◆ getWrittenBuiltinSpecs() [1/2]

WrittenBuiltinSpecs& clang::BuiltinTypeLoc::getWrittenBuiltinSpecs | ( |  | ) |
| inline

Definition at line 569 of file TypeLoc.h.

Referenced by clang::TransformTypeSpecType().

## ◆ getWrittenBuiltinSpecs() [2/2]

const WrittenBuiltinSpecs& clang::BuiltinTypeLoc::getWrittenBuiltinSpecs | ( |  | ) | const
| inline

Definition at line 572 of file TypeLoc.h.

## ◆ getWrittenSignSpec()

TypeSpecifierSign clang::BuiltinTypeLoc::getWrittenSignSpec | ( |  | ) | const
| inline

Definition at line 596 of file TypeLoc.h.

References clang::TSS_unspecified.

## ◆ getWrittenTypeSpec()

TypeSpecifierType BuiltinTypeLoc::getWrittenTypeSpec | ( |  | ) | const

Definition at line 309 of file TypeLoc.cpp.

References clang::TypeLoc::getAs(), clang::TST_bool, clang::TST_char, clang::TST_char16, clang::TST_char32, clang::TST_char8, clang::TST_unspecified, clang::TST_void, and clang::TST_wchar.

## ◆ getWrittenWidthSpec()

TypeSpecifierWidth clang::BuiltinTypeLoc::getWrittenWidthSpec | ( |  | ) | const
| inline

Definition at line 612 of file TypeLoc.h.

References clang::TSW_unspecified.

## ◆ hasModeAttr()

bool clang::BuiltinTypeLoc::hasModeAttr | ( |  | ) | const
| inline

Definition at line 639 of file TypeLoc.h.

## ◆ hasWrittenSignSpec()

bool clang::BuiltinTypeLoc::hasWrittenSignSpec | ( |  | ) | const
| inline

Definition at line 603 of file TypeLoc.h.

References clang::TSS_unspecified.

## ◆ hasWrittenTypeSpec()

bool clang::BuiltinTypeLoc::hasWrittenTypeSpec | ( |  | ) | const
| inline

Definition at line 630 of file TypeLoc.h.

References clang::TST_unspecified.

## ◆ hasWrittenWidthSpec()

bool clang::BuiltinTypeLoc::hasWrittenWidthSpec | ( |  | ) | const
| inline

Definition at line 619 of file TypeLoc.h.

References clang::TSW_unspecified.

## ◆ initializeLocal()

void clang::BuiltinTypeLoc::initializeLocal | ( | ASTContext & | Context,
|  | SourceLocation | Loc
| ) |  |
| inline

Definition at line 651 of file TypeLoc.h.

## ◆ needsExtraLocalData()

bool clang::BuiltinTypeLoc::needsExtraLocalData | ( |  | ) | const
| inline

Definition at line 576 of file TypeLoc.h.

References clang::TypeLoc::getTypePtr().

Referenced by clang::TransformTypeSpecType().

## ◆ setBuiltinLoc()

void clang::BuiltinTypeLoc::setBuiltinLoc | ( | SourceLocation | Loc | ) |
| inline

Definition at line 553 of file TypeLoc.h.

Referenced by clang::TransformTypeSpecType().

## ◆ setModeAttr()

void clang::BuiltinTypeLoc::setModeAttr | ( | bool | written | ) |
| inline

Definition at line 646 of file TypeLoc.h.

## ◆ setWrittenSignSpec()

void clang::BuiltinTypeLoc::setWrittenSignSpec | ( | TypeSpecifierSign | written | ) |
| inline

Definition at line 607 of file TypeLoc.h.

## ◆ setWrittenTypeSpec()

void clang::BuiltinTypeLoc::setWrittenTypeSpec | ( | TypeSpecifierType | written | ) |
| inline

Definition at line 634 of file TypeLoc.h.

## ◆ setWrittenWidthSpec()

void clang::BuiltinTypeLoc::setWrittenWidthSpec | ( | TypeSpecifierWidth | written | ) |
| inline

Definition at line 623 of file TypeLoc.h.

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

- include/clang/AST/TypeLoc.h
- lib/AST/TypeLoc.cpp