import org.simantics.scl.compiler.elaboration.equation.Equation;
import org.simantics.scl.compiler.elaboration.equation.EquationVisitor;
import org.simantics.scl.compiler.elaboration.expressions.accessor.ExpressionAccessor;
-import org.simantics.scl.compiler.elaboration.expressions.accessor.FieldAccessor;
import org.simantics.scl.compiler.elaboration.expressions.block.BindStatement;
import org.simantics.scl.compiler.elaboration.expressions.block.GuardStatement;
import org.simantics.scl.compiler.elaboration.expressions.block.LetStatement;
return expression;
}
- @Override
- public Expression transform(EEntityTypeAnnotation expression) {
- expression.expression = expression.expression.accept(this);
- if(expression.query != null)
- expression.query = expression.query.accept(this);
- return expression;
- }
-
@Override
public Expression transform(EError expression) {
return expression;
@Override
public Expression transform(EFieldAccess expression) {
expression.parent = expression.parent.accept(this);
- for(FieldAccessor accessor : expression.accessors)
- if(accessor instanceof ExpressionAccessor) {
- ExpressionAccessor expAcc = (ExpressionAccessor)accessor;
- expAcc.fieldName = expAcc.fieldName.accept(this);
- }
+ if(expression.accessor instanceof ExpressionAccessor) {
+ ExpressionAccessor expAcc = (ExpressionAccessor)expression.accessor;
+ expAcc.fieldName = expAcc.fieldName.accept(this);
+ }
return expression;
}