#include <RangeAttrib.h>


Public Member Functions | |
| ArrayRangeAttrib (Expr *prefix, Expr *dimension, Location loc) | |
| ArrayRangeAttrib (Expr *prefix, Location loc) | |
| Constructs an array range attribute with an implicit dimension. | |
| bool | hasImplicitDimension () const |
| unsigned | getDimension () const |
| Returns the zero based dimension associated with this attribute. | |
| const Expr * | getPrefix () const |
| Returns the prefix of this range attribute. | |
| Expr * | getPrefix () |
| Returns the prefix of this range attribute. | |
| Expr * | getDimensionExpr () |
| const Expr * | getDimensionExpr () const |
| Returns the prefix of this range attribute. | |
| const DiscreteType * | getType () const |
| Returns the type of this range attribute. | |
| DiscreteType * | getType () |
| Returns the prefix of this range attribute. | |
Static Public Member Functions | |
| static bool | classof (const ArrayRangeAttrib *node) |
| Support isa and dyn_cast. | |
| static bool | classof (const Ast *node) |
This node representes range attributes when applied to a prefix expression of array type.
Definition at line 65 of file RangeAttrib.h.
| comma::ArrayRangeAttrib::ArrayRangeAttrib | ( | Expr * | prefix, | |
| Expr * | dimension, | |||
| Location | loc | |||
| ) | [inline] |
Constructs an array range attribute with an explicit dimension.
The dimension must be staticly evaluable to a discrete value.
Definition at line 71 of file RangeAttrib.h.
Constructs an array range attribute with an implicit dimension.
Definition at line 84 of file RangeAttrib.h.
| static bool comma::ArrayRangeAttrib::classof | ( | const Ast * | node | ) | [inline, static] |
Reimplemented from comma::RangeAttrib.
Definition at line 132 of file RangeAttrib.h.
| static bool comma::ArrayRangeAttrib::classof | ( | const ArrayRangeAttrib * | node | ) | [inline, static] |
Support isa and dyn_cast.
Reimplemented from comma::RangeAttrib.
Definition at line 131 of file RangeAttrib.h.
| unsigned comma::ArrayRangeAttrib::getDimension | ( | ) | const [inline] |
Returns the zero based dimension associated with this attribute.
Definition at line 115 of file RangeAttrib.h.
| const Expr* comma::ArrayRangeAttrib::getDimensionExpr | ( | ) | const [inline] |
Returns the prefix of this range attribute.
Definition at line 111 of file RangeAttrib.h.
| Expr* comma::ArrayRangeAttrib::getDimensionExpr | ( | ) | [inline] |
Returns the dimension expression associated with this attribute, or null if the dimension is implicit for this node.
Note the the expression returned is always a static
Definition at line 110 of file RangeAttrib.h.
| Expr* comma::ArrayRangeAttrib::getPrefix | ( | ) | [inline] |
Returns the prefix of this range attribute.
Reimplemented from comma::RangeAttrib.
Definition at line 96 of file RangeAttrib.h.
| const Expr* comma::ArrayRangeAttrib::getPrefix | ( | ) | const [inline] |
Returns the prefix of this range attribute.
Reimplemented from comma::RangeAttrib.
Definition at line 93 of file RangeAttrib.h.
| DiscreteType* comma::ArrayRangeAttrib::getType | ( | ) | [inline, virtual] |
Returns the prefix of this range attribute.
Implements comma::RangeAttrib.
Definition at line 124 of file RangeAttrib.h.
| const DiscreteType* comma::ArrayRangeAttrib::getType | ( | ) | const [inline, virtual] |
Returns the type of this range attribute.
Implements comma::RangeAttrib.
Definition at line 119 of file RangeAttrib.h.
| bool comma::ArrayRangeAttrib::hasImplicitDimension | ( | ) | const [inline] |
Returns true if the dimension associated with this attribute is implicit.
Definition at line 103 of file RangeAttrib.h.
1.6.1