class UnaryTransformTypeLoc

Declaration

class UnaryTransformTypeLoc : public ConcreteTypeLoc { /* full declaration omitted */ };

Description

A metaprogramming base class for TypeLoc classes which correspond to a particular Type subclass. It is accepted for a single TypeLoc class to correspond to multiple Type classes. TypeLocs with non-constant amounts of local data should override getExtraLocalDataSize(); getExtraLocalData() will then point to this extra memory. TypeLocs with an inner type should define QualType getInnerType() const and getInnerTypeLoc() will then point to this inner type's location data. A word about hierarchies: this template is not designed to be derived from multiple times in a hierarchy. It is also not designed to be used for classes where subtypes might provide different amounts of source information. It should be subclassed only at the deepest portion of the hierarchy where all children have identical source information; if that's an abstract type, then further descendents should inherit from InheritingConcreteTypeLoc instead.

Declared at: clang/include/clang/AST/TypeLoc.h:2058

Inherits from: ConcreteTypeLoc

Method Overview

Methods

clang::SourceLocation getKWLoc() const

Declared at: clang/include/clang/AST/TypeLoc.h:2063

clang::SourceLocation getLParenLoc() const

Declared at: clang/include/clang/AST/TypeLoc.h:2066

clang::SourceRange getLocalSourceRange() const

Declared at: clang/include/clang/AST/TypeLoc.h:2080

clang::SourceRange getParensRange() const

Declared at: clang/include/clang/AST/TypeLoc.h:2084

clang::SourceLocation getRParenLoc() const

Declared at: clang/include/clang/AST/TypeLoc.h:2069

clang::TypeSourceInfo* getUnderlyingTInfo() const

Declared at: clang/include/clang/AST/TypeLoc.h:2072

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

Declared at: clang/include/clang/AST/TypeLoc.h:2093

Parameters

clang::ASTContext& Context
clang::SourceLocation Loc

void setKWLoc(clang::SourceLocation Loc)

Declared at: clang/include/clang/AST/TypeLoc.h:2064

Parameters

clang::SourceLocation Loc

void setLParenLoc(clang::SourceLocation Loc)

Declared at: clang/include/clang/AST/TypeLoc.h:2067

Parameters

clang::SourceLocation Loc

void setParensRange(clang::SourceRange Range)

Declared at: clang/include/clang/AST/TypeLoc.h:2088

Parameters

clang::SourceRange Range

void setRParenLoc(clang::SourceLocation Loc)

Declared at: clang/include/clang/AST/TypeLoc.h:2070

Parameters

clang::SourceLocation Loc

void setUnderlyingTInfo(
    clang::TypeSourceInfo* TInfo)

Declared at: clang/include/clang/AST/TypeLoc.h:2076

Parameters

clang::TypeSourceInfo* TInfo