001 package com.google.dart.compiler.backend.js.ast;
002
003 import org.jetbrains.annotations.NotNull;
004
005 public class ChameleonJsExpression implements JsExpression {
006 private JsExpression expression;
007
008 public ChameleonJsExpression(JsExpression initialExpression) {
009 expression = initialExpression;
010 }
011
012 public ChameleonJsExpression() {
013 }
014
015 public void resolve(JsExpression expression) {
016 this.expression = expression;
017 }
018
019 @Override
020 public boolean isLeaf() {
021 return expression.isLeaf();
022 }
023
024 @Override
025 @NotNull
026 public JsStatement makeStmt() {
027 return expression.makeStmt();
028 }
029
030 @Override
031 public void accept(JsVisitor visitor) {
032 expression.accept(visitor);
033 }
034
035 @Override
036 public void acceptChildren(JsVisitor visitor) {
037 expression.acceptChildren(visitor);
038 }
039
040 @Override
041 public Object getSource() {
042 return expression.getSource();
043 }
044
045 @Override
046 public void setSource(Object info) {
047 expression.setSource(info);
048 }
049
050 @Override
051 public JsExpression source(Object info) {
052 return expression.source(info);
053 }
054 }