|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface LValueTIR
The abstract AST for all kinds of l-values. Hobbes, the language, has three
kinds of l-values: simple variables, array references, and field references
(from a record). Those wanting only simple variables must still go through
SimpleLValueTIR and this interface indirectly to implement them well.
There is a separate visitor LValueTIRVisitor for this interface and
its hierarchy. An implementation of ExpressionTIRVisitor will often
have to be paired with an implementation of LValueTIRVisitor.
| Method Summary | ||
|---|---|---|
|
accept(LValueTIRVisitor<T> visitor)
Implements the visitor pattern with LValueTIRVisitor. |
|
IPosition |
getPosition()
Returns the location of the l-value in the code. |
|
HobbesType |
getType()
Returns the type of the l-value. |
|
void |
setType(HobbesType type)
Sets the type of the l-value. |
|
| Method Detail |
|---|
<T> T accept(LValueTIRVisitor<T> visitor)
LValueTIRVisitor.
T - the return type from the visit with the visitor.visitor - the visitor itself.
HobbesType getType()
void setType(HobbesType type)
type - the type of the l-value.IPosition getPosition()
getPosition in interface HobbesTIR
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||