#include <AttribExpr.h>
Public Member Functions | |
bool | hasImplicitDimension () const |
unsigned | getDimension () const |
Returns the zero based dimension associated with this attribute. | |
bool | isFirst () const |
Returns true if this is a First attribute. | |
bool | isLast () const |
Returns true if this is a Last attribute. | |
Expr * | getDimensionExpr () |
const Expr * | getDimensionExpr () const |
const Expr * | getPrefix () const |
Specializations of AttribExpr::getPrefix(). | |
Expr * | getPrefix () |
const ArrayType * | getPrefixType () const |
Returns the type of the prefix. | |
ArrayType * | getPrefixType () |
const IntegerType * | getType () const |
Specializations of Expr::getType(). | |
IntegerType * | getType () |
Static Public Member Functions | |
static bool | classof (const ArrayBoundAE *node) |
Support isa and dyn_cast. | |
static bool | classof (const Ast *node) |
Protected Member Functions | |
ArrayBoundAE (AstKind kind, Expr *prefix, Expr *dimension, Location loc) | |
ArrayBoundAE (AstKind kind, Expr *prefix, Location loc) | |
Protected Attributes | |
Expr * | dimExpr |
unsigned | dimValue |
Common base class for the attributes First
and Last
when applied to a prefix of array type.
Definition at line 169 of file AttribExpr.h.
ArrayBoundAE::ArrayBoundAE | ( | AstKind | kind, | |
Expr * | prefix, | |||
Expr * | dimension, | |||
Location | loc | |||
) | [protected] |
Creates an array bound attribute expression with an explicit dimension.
prefix | An expression which must resolve to an array type. | |
dimension | A positive static integer expression which does not exceed the dimensionality of the type of prefix . | |
loc | the location of the attribute. |
Definition at line 43 of file AttribExpr.cpp.
Creates an array bound arribute expression with an implicit dimension of 1.
prefix | An expression which must resolve to an array type. | |
loc | the location of the attribute. |
Definition at line 68 of file AttribExpr.cpp.
static bool comma::ArrayBoundAE::classof | ( | const Ast * | node | ) | [inline, static] |
Reimplemented from comma::AttribExpr.
Reimplemented in comma::FirstArrayAE, and comma::LastArrayAE.
Definition at line 224 of file AttribExpr.h.
static bool comma::ArrayBoundAE::classof | ( | const ArrayBoundAE * | node | ) | [inline, static] |
Support isa and dyn_cast.
Reimplemented from comma::AttribExpr.
Reimplemented in comma::FirstArrayAE, and comma::LastArrayAE.
Definition at line 223 of file AttribExpr.h.
unsigned comma::ArrayBoundAE::getDimension | ( | ) | const [inline] |
Returns the zero based dimension associated with this attribute.
Definition at line 184 of file AttribExpr.h.
const Expr* comma::ArrayBoundAE::getDimensionExpr | ( | ) | const [inline] |
Returns the dimension expression associated with this attribute, or null if the dimension is implicit for this node.
Definition at line 180 of file AttribExpr.h.
Expr* comma::ArrayBoundAE::getDimensionExpr | ( | ) | [inline] |
Returns the dimension expression associated with this attribute, or null if the dimension is implicit for this node.
Definition at line 179 of file AttribExpr.h.
Expr* comma::ArrayBoundAE::getPrefix | ( | ) | [inline] |
Returns the dimension expression associated with this attribute, or null if the dimension is implicit for this node.
Reimplemented from comma::AttribExpr.
Definition at line 197 of file AttribExpr.h.
const Expr* comma::ArrayBoundAE::getPrefix | ( | ) | const [inline] |
Specializations of AttribExpr::getPrefix().
Reimplemented from comma::AttribExpr.
Definition at line 194 of file AttribExpr.h.
ArrayType* comma::ArrayBoundAE::getPrefixType | ( | ) | [inline] |
Returns the dimension expression associated with this attribute, or null if the dimension is implicit for this node.
Definition at line 207 of file AttribExpr.h.
const ArrayType* comma::ArrayBoundAE::getPrefixType | ( | ) | const [inline] |
Returns the type of the prefix.
Definition at line 204 of file AttribExpr.h.
IntegerType* comma::ArrayBoundAE::getType | ( | ) | [inline] |
Returns the dimension expression associated with this attribute, or null if the dimension is implicit for this node.
Definition at line 217 of file AttribExpr.h.
const IntegerType* comma::ArrayBoundAE::getType | ( | ) | const [inline] |
Specializations of Expr::getType().
Reimplemented from comma::Expr.
Definition at line 214 of file AttribExpr.h.
bool comma::ArrayBoundAE::hasImplicitDimension | ( | ) | const [inline] |
Returns true if the dimension associated with this arrtibute is implicit.
Definition at line 174 of file AttribExpr.h.
bool comma::ArrayBoundAE::isFirst | ( | ) | const [inline] |
Returns true if this is a First
attribute.
Definition at line 332 of file AttribExpr.h.
bool comma::ArrayBoundAE::isLast | ( | ) | const [inline] |
Returns true if this is a Last
attribute.
Definition at line 336 of file AttribExpr.h.
Expr* comma::ArrayBoundAE::dimExpr [protected] |
The expression node defining the associated dimension, or null if the dimension is implicit.
Definition at line 250 of file AttribExpr.h.
unsigned comma::ArrayBoundAE::dimValue [protected] |
The static value of the dimension expression, or 0 if the dimension is implicit.
Definition at line 254 of file AttribExpr.h.