class AutoTypeLoc
Declaration
class AutoTypeLoc : 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:2114
Inherits from: ConcreteTypeLoc
Method Overview
- public void copy(clang::AutoTypeLoc Loc)
- private clang::TemplateArgumentLocInfo * getArgInfos() const
- public clang::TemplateArgumentLoc getArgLoc(unsigned int i) const
- public clang::TemplateArgumentLocInfo getArgLocInfo(unsigned int i) const
- public clang::AutoTypeKeyword getAutoKeyword() const
- public clang::DeclarationNameInfo getConceptNameInfo() const
- public clang::SourceLocation getConceptNameLoc() const
- public unsigned int getExtraLocalDataAlignment() const
- public unsigned int getExtraLocalDataSize() const
- public clang::NamedDecl * getFoundDecl() const
- public clang::SourceLocation getLAngleLoc() const
- public clang::SourceRange getLocalSourceRange() const
- public clang::ConceptDecl * getNamedConcept() const
- public const clang::NestedNameSpecifierLoc & getNestedNameSpecifierLoc() const
- public unsigned int getNumArgs() const
- public clang::SourceLocation getRAngleLoc() const
- public clang::SourceLocation getRParenLoc() const
- public clang::SourceLocation getTemplateKWLoc() const
- public bool hasExplicitTemplateArgs() const
- public void initializeLocal(clang::ASTContext & Context, clang::SourceLocation Loc)
- public bool isConstrained() const
- public bool isDecltypeAuto() const
- public void setArgLocInfo(unsigned int i, clang::TemplateArgumentLocInfo AI)
- public void setConceptNameLoc(clang::SourceLocation Loc)
- public void setFoundDecl(clang::NamedDecl * D)
- public void setLAngleLoc(clang::SourceLocation Loc)
- public void setNestedNameSpecifierLoc(clang::NestedNameSpecifierLoc NNS)
- public void setRAngleLoc(clang::SourceLocation Loc)
- public void setRParenLoc(clang::SourceLocation Loc)
- public void setTemplateKWLoc(clang::SourceLocation Loc)
Methods
¶void copy(clang::AutoTypeLoc Loc)
void copy(clang::AutoTypeLoc Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2217
Parameters
¶clang::TemplateArgumentLocInfo* getArgInfos()
const
clang::TemplateArgumentLocInfo* getArgInfos()
const
Declared at: clang/include/clang/AST/TypeLoc.h:2234
¶clang::TemplateArgumentLoc getArgLoc(
unsigned int i) const
clang::TemplateArgumentLoc getArgLoc(
unsigned int i) const
Declared at: clang/include/clang/AST/TypeLoc.h:2202
Parameters
- unsigned int i
¶clang::TemplateArgumentLocInfo getArgLocInfo(
unsigned int i) const
clang::TemplateArgumentLocInfo getArgLocInfo(
unsigned int i) const
Declared at: clang/include/clang/AST/TypeLoc.h:2198
Parameters
- unsigned int i
¶clang::AutoTypeKeyword getAutoKeyword() const
clang::AutoTypeKeyword getAutoKeyword() const
Declared at: clang/include/clang/AST/TypeLoc.h:2120
¶clang::DeclarationNameInfo getConceptNameInfo()
const
clang::DeclarationNameInfo getConceptNameInfo()
const
Declared at: clang/include/clang/AST/TypeLoc.h:2168
¶clang::SourceLocation getConceptNameLoc() const
clang::SourceLocation getConceptNameLoc() const
Declared at: clang/include/clang/AST/TypeLoc.h:2148
¶unsigned int getExtraLocalDataAlignment() const
unsigned int getExtraLocalDataAlignment() const
Declared at: clang/include/clang/AST/TypeLoc.h:2229
¶unsigned int getExtraLocalDataSize() const
unsigned int getExtraLocalDataSize() const
Declared at: clang/include/clang/AST/TypeLoc.h:2225
¶clang::NamedDecl* getFoundDecl() const
clang::NamedDecl* getFoundDecl() const
Declared at: clang/include/clang/AST/TypeLoc.h:2156
¶clang::SourceLocation getLAngleLoc() const
clang::SourceLocation getLAngleLoc() const
Declared at: clang/include/clang/AST/TypeLoc.h:2174
¶clang::SourceRange getLocalSourceRange() const
clang::SourceRange getLocalSourceRange() const
Declared at: clang/include/clang/AST/TypeLoc.h:2207
¶clang::ConceptDecl* getNamedConcept() const
clang::ConceptDecl* getNamedConcept() const
Declared at: clang/include/clang/AST/TypeLoc.h:2164
¶const clang::NestedNameSpecifierLoc&
getNestedNameSpecifierLoc() const
const clang::NestedNameSpecifierLoc&
getNestedNameSpecifierLoc() const
Declared at: clang/include/clang/AST/TypeLoc.h:2132
¶unsigned int getNumArgs() const
unsigned int getNumArgs() const
Declared at: clang/include/clang/AST/TypeLoc.h:2190
¶clang::SourceLocation getRAngleLoc() const
clang::SourceLocation getRAngleLoc() const
Declared at: clang/include/clang/AST/TypeLoc.h:2182
¶clang::SourceLocation getRParenLoc() const
clang::SourceLocation getRParenLoc() const
Declared at: clang/include/clang/AST/TypeLoc.h:2125
¶clang::SourceLocation getTemplateKWLoc() const
clang::SourceLocation getTemplateKWLoc() const
Declared at: clang/include/clang/AST/TypeLoc.h:2140
¶bool hasExplicitTemplateArgs() const
bool hasExplicitTemplateArgs() const
Declared at: clang/include/clang/AST/TypeLoc.h:2170
¶void initializeLocal(clang::ASTContext& Context,
clang::SourceLocation Loc)
void initializeLocal(clang::ASTContext& Context,
clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2223
Parameters
- clang::ASTContext& Context
- clang::SourceLocation Loc
¶bool isConstrained() const
bool isConstrained() const
Declared at: clang/include/clang/AST/TypeLoc.h:2128
¶bool isDecltypeAuto() const
bool isDecltypeAuto() const
Declared at: clang/include/clang/AST/TypeLoc.h:2124
¶void setArgLocInfo(
unsigned int i,
clang::TemplateArgumentLocInfo AI)
void setArgLocInfo(
unsigned int i,
clang::TemplateArgumentLocInfo AI)
Declared at: clang/include/clang/AST/TypeLoc.h:2194
Parameters
- unsigned int i
- clang::TemplateArgumentLocInfo AI
¶void setConceptNameLoc(clang::SourceLocation Loc)
void setConceptNameLoc(clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2152
Parameters
¶void setFoundDecl(clang::NamedDecl* D)
void setFoundDecl(clang::NamedDecl* D)
Declared at: clang/include/clang/AST/TypeLoc.h:2160
Parameters
¶void setLAngleLoc(clang::SourceLocation Loc)
void setLAngleLoc(clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2178
Parameters
¶void setNestedNameSpecifierLoc(
clang::NestedNameSpecifierLoc NNS)
void setNestedNameSpecifierLoc(
clang::NestedNameSpecifierLoc NNS)
Declared at: clang/include/clang/AST/TypeLoc.h:2136
Parameters
¶void setRAngleLoc(clang::SourceLocation Loc)
void setRAngleLoc(clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2186
Parameters
¶void setRParenLoc(clang::SourceLocation Loc)
void setRParenLoc(clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2126
Parameters
¶void setTemplateKWLoc(clang::SourceLocation Loc)
void setTemplateKWLoc(clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/TypeLoc.h:2144