class MatrixTypeLoc
Declaration
class MatrixTypeLoc : 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:1866
Inherits from: ConcreteTypeLoc
Method Overview
- public clang::Expr * getAttrColumnOperand() const
- public clang::SourceLocation getAttrNameLoc() const
- public clang::SourceRange getAttrOperandParensRange() const
- public clang::Expr * getAttrRowOperand() const
- public clang::SourceRange getLocalSourceRange() const
- public void initializeLocal(clang::ASTContext & Context, clang::SourceLocation loc)
- public void setAttrColumnOperand(clang::Expr * e)
- public void setAttrNameLoc(clang::SourceLocation loc)
- public void setAttrOperandParensRange(clang::SourceRange range)
- public void setAttrRowOperand(clang::Expr * e)
Methods
¶clang::Expr* getAttrColumnOperand() const
clang::Expr* getAttrColumnOperand() const
Description
The attribute's column operand, if it has one. float __attribute__((matrix_type(4, 2))) ^
Declared at: clang/include/clang/AST/TypeLoc.h:1884
¶clang::SourceLocation getAttrNameLoc() const
clang::SourceLocation getAttrNameLoc() const
Description
The location of the attribute name, i.e. float __attribute__((matrix_type(4, 2))) ^~~~~~~~~~~~~~~~~
Declared at: clang/include/clang/AST/TypeLoc.h:1872
¶clang::SourceRange getAttrOperandParensRange()
const
clang::SourceRange getAttrOperandParensRange()
const
Description
The location of the parentheses around the operand, if there is an operand. float __attribute__((matrix_type(4, 2))) ^ ^
Declared at: clang/include/clang/AST/TypeLoc.h:1891
¶clang::Expr* getAttrRowOperand() const
clang::Expr* getAttrRowOperand() const
Description
The attribute's row operand, if it has one. float __attribute__((matrix_type(4, 2))) ^
Declared at: clang/include/clang/AST/TypeLoc.h:1878
¶clang::SourceRange getLocalSourceRange() const
clang::SourceRange getLocalSourceRange() const
Declared at: clang/include/clang/AST/TypeLoc.h:1898
¶void initializeLocal(clang::ASTContext& Context,
clang::SourceLocation loc)
void initializeLocal(clang::ASTContext& Context,
clang::SourceLocation loc)
Declared at: clang/include/clang/AST/TypeLoc.h:1904
Parameters
- clang::ASTContext& Context
- clang::SourceLocation loc
¶void setAttrColumnOperand(clang::Expr* e)
void setAttrColumnOperand(clang::Expr* e)
Declared at: clang/include/clang/AST/TypeLoc.h:1885
Parameters
- clang::Expr* e
¶void setAttrNameLoc(clang::SourceLocation loc)
void setAttrNameLoc(clang::SourceLocation loc)
Declared at: clang/include/clang/AST/TypeLoc.h:1873
Parameters
¶void setAttrOperandParensRange(
clang::SourceRange range)
void setAttrOperandParensRange(
clang::SourceRange range)
Declared at: clang/include/clang/AST/TypeLoc.h:1894
Parameters
- clang::SourceRange range
¶void setAttrRowOperand(clang::Expr* e)
void setAttrRowOperand(clang::Expr* e)
Declared at: clang/include/clang/AST/TypeLoc.h:1879
Parameters
- clang::Expr* e