class Designator
Declaration
class Designator { /* full declaration omitted */ };
Description
Designator - A designator in a C99 designated initializer. This class is a discriminated union which holds the various different sorts of designators possible. A Designation is an array of these. An example of a designator are things like this: [8] .field [47] // C99 designation: 3 designators [8 ... 47] field: // GNU extensions: 2 designators These occur in initializers, e.g.: int a[10] = {2, 4, [8]=9, 10};
Declared at: clang/include/clang/Sema/Designator.h:36
Member Variables
- private clang::Designator::DesignatorKind Kind
- private anonymous struct / union
Method Overview
- public void ClearExprs(clang::Sema & Actions)
- private Designator()
- public void FreeExprs(clang::Sema & Actions)
- public static clang::Designator getArray(clang::Expr * Index, clang::SourceLocation LBracketLoc)
- public clang::Expr * getArrayIndex() const
- public static clang::Designator getArrayRange(clang::Expr * Start, clang::Expr * End, clang::SourceLocation LBracketLoc, clang::SourceLocation EllipsisLoc)
- public clang::Expr * getArrayRangeEnd() const
- public clang::Expr * getArrayRangeStart() const
- public clang::SourceLocation getDotLoc() const
- public clang::SourceLocation getEllipsisLoc() const
- public const clang::IdentifierInfo * getField() const
- public static clang::Designator getField(const clang::IdentifierInfo * II, clang::SourceLocation DotLoc, clang::SourceLocation NameLoc)
- public clang::SourceLocation getFieldLoc() const
- public clang::Designator::DesignatorKind getKind() const
- public clang::SourceLocation getLBracketLoc() const
- public clang::SourceLocation getRBracketLoc() const
- public bool isArrayDesignator() const
- public bool isArrayRangeDesignator() const
- public bool isFieldDesignator() const
- public void setRBracketLoc(clang::SourceLocation RBracketLoc) const
Methods
¶void ClearExprs(clang::Sema& Actions)
void ClearExprs(clang::Sema& Actions)
Description
ClearExprs - Null out any expression references, which prevents them from being 'delete'd later.
Declared at: clang/include/clang/Sema/Designator.h:175
Parameters
- clang::Sema& Actions
¶Designator()
Designator()
Declared at: clang/include/clang/Sema/Designator.h:42
¶void FreeExprs(clang::Sema& Actions)
void FreeExprs(clang::Sema& Actions)
Description
FreeExprs - Release any unclaimed memory for the expressions in this designator.
Declared at: clang/include/clang/Sema/Designator.h:179
Parameters
- clang::Sema& Actions
¶static clang::Designator getArray(
clang::Expr* Index,
clang::SourceLocation LBracketLoc)
static clang::Designator getArray(
clang::Expr* Index,
clang::SourceLocation LBracketLoc)
Declared at: clang/include/clang/Sema/Designator.h:138
Parameters
- clang::Expr* Index
- clang::SourceLocation LBracketLoc
¶clang::Expr* getArrayIndex() const
clang::Expr* getArrayIndex() const
Declared at: clang/include/clang/Sema/Designator.h:90
¶static clang::Designator getArrayRange(
clang::Expr* Start,
clang::Expr* End,
clang::SourceLocation LBracketLoc,
clang::SourceLocation EllipsisLoc)
static clang::Designator getArrayRange(
clang::Expr* Start,
clang::Expr* End,
clang::SourceLocation LBracketLoc,
clang::SourceLocation EllipsisLoc)
Declared at: clang/include/clang/Sema/Designator.h:149
Parameters
- clang::Expr* Start
- clang::Expr* End
- clang::SourceLocation LBracketLoc
- clang::SourceLocation EllipsisLoc
¶clang::Expr* getArrayRangeEnd() const
clang::Expr* getArrayRangeEnd() const
Declared at: clang/include/clang/Sema/Designator.h:99
¶clang::Expr* getArrayRangeStart() const
clang::Expr* getArrayRangeStart() const
Declared at: clang/include/clang/Sema/Designator.h:95
¶clang::SourceLocation getDotLoc() const
clang::SourceLocation getDotLoc() const
Declared at: clang/include/clang/Sema/Designator.h:80
¶clang::SourceLocation getEllipsisLoc() const
clang::SourceLocation getEllipsisLoc() const
Declared at: clang/include/clang/Sema/Designator.h:122
¶const clang::IdentifierInfo* getField() const
const clang::IdentifierInfo* getField() const
Declared at: clang/include/clang/Sema/Designator.h:75
¶static clang::Designator getField(
const clang::IdentifierInfo* II,
clang::SourceLocation DotLoc,
clang::SourceLocation NameLoc)
static clang::Designator getField(
const clang::IdentifierInfo* II,
clang::SourceLocation DotLoc,
clang::SourceLocation NameLoc)
Declared at: clang/include/clang/Sema/Designator.h:127
Parameters
- const clang::IdentifierInfo* II
- clang::SourceLocation DotLoc
- clang::SourceLocation NameLoc
¶clang::SourceLocation getFieldLoc() const
clang::SourceLocation getFieldLoc() const
Declared at: clang/include/clang/Sema/Designator.h:85
¶clang::Designator::DesignatorKind getKind() const
clang::Designator::DesignatorKind getKind() const
Declared at: clang/include/clang/Sema/Designator.h:70
¶clang::SourceLocation getLBracketLoc() const
clang::SourceLocation getLBracketLoc() const
Declared at: clang/include/clang/Sema/Designator.h:104
¶clang::SourceLocation getRBracketLoc() const
clang::SourceLocation getRBracketLoc() const
Declared at: clang/include/clang/Sema/Designator.h:113
¶bool isArrayDesignator() const
bool isArrayDesignator() const
Declared at: clang/include/clang/Sema/Designator.h:72
¶bool isArrayRangeDesignator() const
bool isArrayRangeDesignator() const
Declared at: clang/include/clang/Sema/Designator.h:73
¶bool isFieldDesignator() const
bool isFieldDesignator() const
Declared at: clang/include/clang/Sema/Designator.h:71
¶void setRBracketLoc(
clang::SourceLocation RBracketLoc) const
void setRBracketLoc(
clang::SourceLocation RBracketLoc) const
Declared at: clang/include/clang/Sema/Designator.h:164
Parameters
- clang::SourceLocation RBracketLoc