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

Wrapper for source info for functions. More...

#include "clang/AST/TypeLoc.h"

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

Public Member Functions

SourceLocation getLocalRangeBegin () const
 
void setLocalRangeBegin (SourceLocation L)
 
SourceLocation getLocalRangeEnd () const
 
void setLocalRangeEnd (SourceLocation L)
 
SourceLocation getLParenLoc () const
 
void setLParenLoc (SourceLocation Loc)
 
SourceLocation getRParenLoc () const
 
void setRParenLoc (SourceLocation Loc)
 
SourceRange getParensRange () const
 
SourceRange getExceptionSpecRange () const
 
void setExceptionSpecRange (SourceRange R)
 
ArrayRef< ParmVarDecl * > getParams () const
 
ParmVarDecl ** getParmArray () const
 
unsigned getNumParams () const
 
ParmVarDeclgetParam (unsigned i) const
 
void setParam (unsigned i, ParmVarDecl *VD)
 
TypeLoc getReturnLoc () const
 
SourceRange getLocalSourceRange () const
 
void initializeLocal (ASTContext &Context, SourceLocation Loc)
 
unsigned getExtraLocalDataSize () const
 Returns the size of the type source info data block that is specific to this type.
 
unsigned getExtraLocalDataAlignment () const
 
QualType getInnerType () const
 
- Public Member Functions inherited from clang::ConcreteTypeLoc< UnqualTypeLoc, FunctionTypeLoc, FunctionType, FunctionLocInfo >
unsigned getLocalDataAlignment () const
 
unsigned getLocalDataSize () const
 
void copyLocal (FunctionTypeLoc other)
 
TypeLoc getNextTypeLoc () const
 
const FunctionTypegetTypePtr () 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
 

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.
 
static unsigned getLocalAlignmentForType (QualType Ty)
 Returns the alignment of type source info data block for the given type.
 
- Protected Member Functions inherited from clang::ConcreteTypeLoc< UnqualTypeLoc, FunctionTypeLoc, FunctionType, FunctionLocInfo >
unsigned getExtraLocalDataSize () const
 
unsigned getExtraLocalDataAlignment () const
 
FunctionLocInfogetLocalData () 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

Wrapper for source info for functions.

Definition at line 1425 of file TypeLoc.h.

Member Function Documentation

◆ getExceptionSpecRange()

SourceRange clang::FunctionTypeLoc::getExceptionSpecRange ( ) const
inline

◆ getExtraLocalDataAlignment()

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

Definition at line 1535 of file TypeLoc.h.

◆ getExtraLocalDataSize()

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

Returns the size of the type source info data block that is specific to this type.

Definition at line 1530 of file TypeLoc.h.

References getNumParams().

◆ getInnerType()

QualType clang::FunctionTypeLoc::getInnerType ( ) const
inline

◆ getLocalRangeBegin()

SourceLocation clang::FunctionTypeLoc::getLocalRangeBegin ( ) const
inline

◆ getLocalRangeEnd()

SourceLocation clang::FunctionTypeLoc::getLocalRangeEnd ( ) const
inline

◆ getLocalSourceRange()

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

Definition at line 1513 of file TypeLoc.h.

References getLocalRangeBegin(), and getLocalRangeEnd().

◆ getLParenLoc()

SourceLocation clang::FunctionTypeLoc::getLParenLoc ( ) const
inline

◆ getNumParams()

unsigned clang::FunctionTypeLoc::getNumParams ( ) const
inline

◆ getParam()

ParmVarDecl * clang::FunctionTypeLoc::getParam ( unsigned  i) const
inline

◆ getParams()

ArrayRef< ParmVarDecl * > clang::FunctionTypeLoc::getParams ( ) const
inline

◆ getParensRange()

SourceRange clang::FunctionTypeLoc::getParensRange ( ) const
inline

Definition at line 1476 of file TypeLoc.h.

References getLParenLoc(), and getRParenLoc().

◆ getParmArray()

ParmVarDecl ** clang::FunctionTypeLoc::getParmArray ( ) const
inline

◆ getReturnLoc()

TypeLoc clang::FunctionTypeLoc::getReturnLoc ( ) const
inline

◆ getRParenLoc()

SourceLocation clang::FunctionTypeLoc::getRParenLoc ( ) const
inline

◆ initializeLocal()

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

◆ setExceptionSpecRange()

void clang::FunctionTypeLoc::setExceptionSpecRange ( SourceRange  R)
inline

◆ setLocalRangeBegin()

void clang::FunctionTypeLoc::setLocalRangeBegin ( SourceLocation  L)
inline

◆ setLocalRangeEnd()

void clang::FunctionTypeLoc::setLocalRangeEnd ( SourceLocation  L)
inline

◆ setLParenLoc()

void clang::FunctionTypeLoc::setLParenLoc ( SourceLocation  Loc)
inline

◆ setParam()

void clang::FunctionTypeLoc::setParam ( unsigned  i,
ParmVarDecl VD 
)
inline

◆ setRParenLoc()

void clang::FunctionTypeLoc::setRParenLoc ( SourceLocation  Loc)
inline

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