import org.simantics.scl.compiler.errors.Locations;
import org.simantics.scl.compiler.internal.codegen.references.IVal;
import org.simantics.scl.compiler.internal.codegen.writer.CodeWriter;
-import org.simantics.scl.compiler.internal.elaboration.utils.ExpressionDecorator;
import org.simantics.scl.compiler.internal.interpreted.IExpression;
import org.simantics.scl.compiler.internal.interpreted.IVariable;
import org.simantics.scl.compiler.top.ExpressionInterpretationContext;
public class EVariable extends Expression {
public static final EVariable[] EMPTY_ARRAY = new EVariable[0];
- Variable variable;
+ public Variable variable;
public EVariable(Variable variable) {
this.variable = variable;
return context.subsume(this, requiredType);
}
- @Override
- public Expression decorate(ExpressionDecorator decorator) {
- return decorator.decorate(this);
- }
-
@Override
public boolean isEffectful() {
return false;
public void accept(ExpressionVisitor visitor) {
visitor.visit(this);
}
-
- @Override
- public void forVariables(VariableProcedure procedure) {
- if(variable != null)
- procedure.execute(location, variable);
- }
@Override
public boolean isPattern(int arity) {