|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Expr
An Expr
represents any Java expression. All expressions
must be subtypes of Expr.
Method Summary | |
---|---|
java.lang.Object |
constantValue()
Returns the constant value of the expression, if any. |
boolean |
constantValueSet()
|
boolean |
isConstant()
Return whether the expression evaluates to a constant. |
Precedence |
precedence()
Get the precedence of the expression. |
void |
printSubExpr(Expr expr,
boolean associative,
CodeWriter w,
PrettyPrinter pp)
Correctly parenthesize the subexpression expr |
void |
printSubExpr(Expr expr,
CodeWriter w,
PrettyPrinter pp)
Correctly parenthesize the subexpression expr |
Expr |
type(Type type)
Return an equivalent expression, but with the type type . |
Methods inherited from interface polyglot.ast.Node |
---|
childExpectedType, del, del, dump, error, error, ext, ext, ext, ext, isDisambiguated, isTypeChecked, position, position, visit, visitChild, visitEdge, visitList |
Methods inherited from interface polyglot.ast.JL |
---|
init, node |
Methods inherited from interface polyglot.ast.NodeOps |
---|
addDecls, buildTypes, buildTypesEnter, checkConstants, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, prettyPrint, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChildren |
Methods inherited from interface polyglot.util.Copy |
---|
copy |
Methods inherited from interface polyglot.ast.Typed |
---|
type |
Methods inherited from interface polyglot.ast.Term |
---|
acceptCFG, entry, exceptions, exceptions, reachable, reachable |
Method Detail |
---|
Expr type(Type type)
type
.
Precedence precedence()
boolean constantValueSet()
boolean isConstant()
java.lang.Object constantValue()
void printSubExpr(Expr expr, boolean associative, CodeWriter w, PrettyPrinter pp)
expr
based on its precedence and the precedence of this expression.
If the sub-expression has the same precedence as this expression
we parenthesize if the sub-expression does not associate; e.g.,
we parenthesis the right sub-expression of a left-associative
operator.
void printSubExpr(Expr expr, CodeWriter w, PrettyPrinter pp)
expr
based on its precedence and the precedence of this expression.
This is equivalent to printSubexpr(expr, true, w, pp)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |