simplify AST (idea like)
This commit is contained in:
@@ -8,56 +8,56 @@ package com.google.dart.compiler.backend.js.ast;
|
|||||||
* Represents a JavaScript conditional expression.
|
* Represents a JavaScript conditional expression.
|
||||||
*/
|
*/
|
||||||
public final class JsConditional extends JsExpressionImpl {
|
public final class JsConditional extends JsExpressionImpl {
|
||||||
private JsExpression testExpr;
|
private JsExpression testExpression;
|
||||||
private JsExpression elseExpr;
|
private JsExpression elseExpression;
|
||||||
private JsExpression thenExpr;
|
private JsExpression thenExpression;
|
||||||
|
|
||||||
public JsConditional() {
|
public JsConditional() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public JsConditional(JsExpression testExpr, JsExpression thenExpr, JsExpression elseExpr) {
|
public JsConditional(JsExpression testExpression, JsExpression thenExpression, JsExpression elseExpression) {
|
||||||
this.testExpr = testExpr;
|
this.testExpression = testExpression;
|
||||||
this.thenExpr = thenExpr;
|
this.thenExpression = thenExpression;
|
||||||
this.elseExpr = elseExpr;
|
this.elseExpression = elseExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
public JsExpression getElseExpression() {
|
public JsExpression getElseExpression() {
|
||||||
return elseExpr;
|
return elseExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
public JsExpression getTestExpression() {
|
public JsExpression getTestExpression() {
|
||||||
return testExpr;
|
return testExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
public JsExpression getThenExpression() {
|
public JsExpression getThenExpression() {
|
||||||
return thenExpr;
|
return thenExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasSideEffects() {
|
public boolean hasSideEffects() {
|
||||||
return testExpr.hasSideEffects() || thenExpr.hasSideEffects() || elseExpr.hasSideEffects();
|
return testExpression.hasSideEffects() || thenExpression.hasSideEffects() || elseExpression.hasSideEffects();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isDefinitelyNotNull() {
|
public boolean isDefinitelyNotNull() {
|
||||||
return thenExpr.isDefinitelyNotNull() && elseExpr.isDefinitelyNotNull();
|
return thenExpression.isDefinitelyNotNull() && elseExpression.isDefinitelyNotNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isDefinitelyNull() {
|
public boolean isDefinitelyNull() {
|
||||||
return thenExpr.isDefinitelyNull() && elseExpr.isDefinitelyNull();
|
return thenExpression.isDefinitelyNull() && elseExpression.isDefinitelyNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setElseExpression(JsExpression elseExpr) {
|
public void setElseExpression(JsExpression elseExpression) {
|
||||||
this.elseExpr = elseExpr;
|
this.elseExpression = elseExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTestExpression(JsExpression testExpr) {
|
public void setTestExpression(JsExpression testExpression) {
|
||||||
this.testExpr = testExpr;
|
this.testExpression = testExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setThenExpression(JsExpression thenExpr) {
|
public void setThenExpression(JsExpression thenExpression) {
|
||||||
this.thenExpr = thenExpr;
|
this.thenExpression = thenExpression;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -67,8 +67,8 @@ public final class JsConditional extends JsExpressionImpl {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void acceptChildren(JsVisitor visitor, JsContext context) {
|
public void acceptChildren(JsVisitor visitor, JsContext context) {
|
||||||
testExpr = visitor.accept(testExpr);
|
testExpression = visitor.accept(testExpression);
|
||||||
thenExpr = visitor.accept(thenExpr);
|
thenExpression = visitor.accept(thenExpression);
|
||||||
elseExpr = visitor.accept(elseExpr);
|
elseExpression = visitor.accept(elseExpression);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user