]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/relations/TransitiveClosureRelation.java
(refs #7375) Fixed implementation of collectEffects
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / elaboration / relations / TransitiveClosureRelation.java
index 26111e0b43bf781e3e922debfb61ca1eb61e09b8..03e3a7f27667e1fe915f28888e86ea62f531ff0b 100644 (file)
@@ -8,7 +8,7 @@ import static org.simantics.scl.compiler.elaboration.expressions.Expressions.let
 import static org.simantics.scl.compiler.elaboration.expressions.Expressions.tuple;
 import static org.simantics.scl.compiler.elaboration.expressions.Expressions.var;
 
-import org.simantics.scl.compiler.common.names.Name;
+import org.simantics.scl.compiler.common.names.Names;
 import org.simantics.scl.compiler.elaboration.expressions.EApply;
 import org.simantics.scl.compiler.elaboration.expressions.EVariable;
 import org.simantics.scl.compiler.elaboration.expressions.Expression;
@@ -95,14 +95,14 @@ public class TransitiveClosureRelation extends AbstractRelation implements Compo
                 innerParameters, boundVariables);
         
         continuation = context.disjunction(continuation, newContext.getContinuation());
-        continuation = if_(apply(context, Types.PROC, Name.create("MSet", "add"), type,
+        continuation = if_(apply(context.getCompilationContext(), Types.PROC, Names.MSet_add, type,
                 var(set), var(solved)),
                 continuation,
                 context.failure());
         continuation = lambda(Types.PROC, solved, continuation);
         continuation = letRec(f, continuation, apply(var(f), var(bound)));
         continuation = let(set, 
-                apply(context, Types.PROC, Name.create("MSet", "create"), type, tuple()), 
+                apply(context.getCompilationContext(), Types.PROC, Names.MSet_create, type, tuple()), 
                 continuation);
         context.setContinuation(continuation);
         
@@ -139,4 +139,14 @@ public class TransitiveClosureRelation extends AbstractRelation implements Compo
         return new SCLRelation[] { baseRelation };
     }
 
+    @Override
+    public Type getEnforceEffect() {
+        return baseRelation.getEnforceEffect();
+    }
+
+    @Override
+    public Type getQueryEffect() {
+        return baseRelation.getQueryEffect();
+    }
+
 }