import org.simantics.scl.compiler.elaboration.expressions.EBinary;
import org.simantics.scl.compiler.elaboration.expressions.EBind;
import org.simantics.scl.compiler.elaboration.expressions.EBlock;
+import org.simantics.scl.compiler.elaboration.expressions.ECHRRuleset;
import org.simantics.scl.compiler.elaboration.expressions.EConstant;
import org.simantics.scl.compiler.elaboration.expressions.ECoveringBranchPoint;
import org.simantics.scl.compiler.elaboration.expressions.EEnforce;
-import org.simantics.scl.compiler.elaboration.expressions.EEntityTypeAnnotation;
import org.simantics.scl.compiler.elaboration.expressions.EError;
import org.simantics.scl.compiler.elaboration.expressions.EExternalConstant;
import org.simantics.scl.compiler.elaboration.expressions.EFieldAccess;
++codeCounter;
expression.condition = expression.condition.accept(this);
expression.then_ = injectBranchPoint(expression.then_);
- expression.else_ = injectBranchPoint(expression.else_);
+ if(expression.else_ != null)
+ expression.else_ = injectBranchPoint(expression.else_);
return expression;
}
}
@Override
- public Expression transform(EConstant expression) {
+ public Expression transform(ECHRRuleset expression) {
++codeCounter;
return super.transform(expression);
}
@Override
- public Expression transform(ECoveringBranchPoint expression) {
+ public Expression transform(EConstant expression) {
++codeCounter;
return super.transform(expression);
}
@Override
- public Expression transform(EEnforce expression) {
+ public Expression transform(ECoveringBranchPoint expression) {
++codeCounter;
return super.transform(expression);
}
@Override
- public Expression transform(EEntityTypeAnnotation expression) {
+ public Expression transform(EEnforce expression) {
++codeCounter;
return super.transform(expression);
}