X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fchr%2Fplan%2FPostCommitOp.java;h=de00093cfcd9cc7c31d3576693062a3d62c0434a;hp=af41f932b69f08084b6818134493606e33bb7574;hb=a2df536f7fc878982c6c960a79ed49f350cddc6f;hpb=5f0ad7a26810df602600c5eddad317588fce0ac4 diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/plan/PostCommitOp.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/plan/PostCommitOp.java index af41f932b..de00093cf 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/plan/PostCommitOp.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/plan/PostCommitOp.java @@ -3,6 +3,7 @@ package org.simantics.scl.compiler.elaboration.chr.plan; import org.simantics.scl.compiler.compilation.CompilationContext; import org.simantics.scl.compiler.constants.IntegerConstant; import org.simantics.scl.compiler.constants.singletons.NullCheck; +import org.simantics.scl.compiler.elaboration.chr.CHRRuleset; import org.simantics.scl.compiler.elaboration.chr.relations.CHRConstraint; import org.simantics.scl.compiler.internal.codegen.continuations.ICont; import org.simantics.scl.compiler.internal.codegen.references.IVal; @@ -24,9 +25,9 @@ public class PostCommitOp extends PlanOp { @Override public void generateCode(CompilationContext context, PlanContext planContext, CodeWriter w) { if(planContext.currentId != null) { - w.apply(location, planContext.ruleset.writeCurrentId, planContext.storeVar, planContext.currentId); + w.apply(location, planContext.ruleset.writeCurrentId, planContext.contextVar, planContext.currentId); planContext.currentId = null; - w.apply(location, planContext.ruleset.activateProcedure, planContext.storeVar, new IntegerConstant(priority)); + w.apply(location, CHRRuleset.ACTIVATE, planContext.contextVar, new IntegerConstant(priority)); } for(PartnerFact activeFact : planContext.partnerFacts) { if(activeFact.killAfterMatch) { @@ -35,7 +36,7 @@ public class PostCommitOp extends PlanOp { else { CodeWriter iterateAlive = w.createBlock(activeFact.constraint.factType); w.jump(iterateAlive.getContinuation(), w.apply(location, activeFact.nextFact, activeFact.factVar)); - iterateUntilLiveFactFound(iterateAlive, activeFact); + iterateUntilLiveFactFound(iterateAlive, activeFact); } break; }