X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fchr%2Fplanning%2FQueryPlanningContext.java;h=56d436f5573f592325a99e5ca93042c2656a7c0f;hb=21eae91e860f9f3cdb9cd0ee6fded24cdb8ca2f5;hp=537a2aa9dca73a0495b7eb794d8f7c5abf16bef0;hpb=fc1c765795517b3e77a1956fb2ae98a770d2beec;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/planning/QueryPlanningContext.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/planning/QueryPlanningContext.java index 537a2aa9d..56d436f55 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/planning/QueryPlanningContext.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/planning/QueryPlanningContext.java @@ -8,6 +8,7 @@ import org.simantics.scl.compiler.elaboration.chr.CHRLiteral; import org.simantics.scl.compiler.elaboration.chr.plan.AccessFactOp; import org.simantics.scl.compiler.elaboration.chr.plan.ClaimOp; import org.simantics.scl.compiler.elaboration.chr.plan.ExecuteOp; +import org.simantics.scl.compiler.elaboration.chr.plan.MatchOp; import org.simantics.scl.compiler.elaboration.chr.plan.PlanOp; import org.simantics.scl.compiler.elaboration.chr.planning.items.CheckPrePlanItem; import org.simantics.scl.compiler.elaboration.chr.planning.items.EqualsPrePlanItem; @@ -22,6 +23,7 @@ import org.simantics.scl.compiler.elaboration.expressions.ELiteral; import org.simantics.scl.compiler.elaboration.expressions.EVariable; import org.simantics.scl.compiler.elaboration.expressions.Expression; import org.simantics.scl.compiler.elaboration.expressions.Variable; +import org.simantics.scl.compiler.errors.Locations; import gnu.trove.impl.Constants; import gnu.trove.map.hash.TObjectIntHashMap; @@ -64,6 +66,8 @@ public class QueryPlanningContext { case MEMBER: addMember(literal.location, literal.parameters[0], literal.parameters[1], secondaryPriority); return; + case ASSIGN: + throw new InternalCompilerError(literal.location, "ASSIGN constraint is not allowed in query compilation."); case EXECUTE: throw new InternalCompilerError(literal.location, "EXECUTE constraint is not allowed in query compilation."); } @@ -223,6 +227,10 @@ public class QueryPlanningContext { for(int i=0;i