public class JL5ExprExt extends JL5TermExt implements ExprOps
Constructor and Description |
---|
JL5ExprExt() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
constantValue(Lang lang)
Return the constant value of the expression, if any.
|
boolean |
constantValueSet(Lang lang)
Return true iff the compiler has determined whether this expression has a
constant value.
|
boolean |
isConstant(Lang lang)
Return whether the expression evaluates to a constant.
|
Expr |
node()
The node we ultimately extend.
|
acceptCFG, firstChild
addDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, ext, ext, extRewrite, extRewriteEnter, init, initPred, pred, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, superLang, throwTypes, toString, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitList
public Expr node()
Ext
node
in interface Ext
node
in class JL5TermExt
public boolean constantValueSet(Lang lang)
ExprOps
isConstant()
is valid only if
constantValueSet()
is true.constantValueSet
in interface ExprOps
public boolean isConstant(Lang lang)
ExprOps
constantValueSet()
is true.isConstant
in interface ExprOps
public java.lang.Object constantValue(Lang lang)
ExprOps
isConstant()
is true.constantValue
in interface ExprOps