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%2Fexpressions%2FERuleset.java;h=dadf52797d28052416c24961a166ee66657b6c78;hp=41d43dd067987bcc6a33c74ebaf870c0324b0e98;hb=6dfe20b0f514b91337fcac4de0267ffd8268be07;hpb=2f63e7a58e49a233b28c6968b848281060117c43 diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ERuleset.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ERuleset.java index 41d43dd06..dadf52797 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ERuleset.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ERuleset.java @@ -43,13 +43,12 @@ import org.simantics.scl.compiler.types.kinds.Kinds; import gnu.trove.impl.Constants; import gnu.trove.map.hash.THashMap; import gnu.trove.map.hash.TObjectIntHashMap; -import gnu.trove.set.hash.THashSet; import gnu.trove.set.hash.TIntHashSet; public class ERuleset extends SimplifiableExpression { LocalRelation[] relations; - DatalogRule[] rules; - Expression in; + public DatalogRule[] rules; + public Expression in; public ERuleset(LocalRelation[] relations, DatalogRule[] rules, Expression in) { this.relations = relations; @@ -129,30 +128,7 @@ public class ERuleset extends SimplifiableExpression { in = in.checkIgnoredType(context); return compile(context); } - - @Override - public void collectFreeVariables(THashSet vars) { - for(DatalogRule rule : rules) { - for(Expression parameter : rule.headParameters) - parameter.collectFreeVariables(vars); - rule.body.collectFreeVariables(vars); - for(Variable var : rule.variables) - vars.remove(var); - } - in.collectFreeVariables(vars); - } - - @Override - public void collectRefs(TObjectIntHashMap allRefs, - TIntHashSet refs) { - for(DatalogRule rule : rules) { - for(Expression parameter : rule.headParameters) - parameter.collectRefs(allRefs, refs); - rule.body.collectRefs(allRefs, refs); - } - in.collectRefs(allRefs, refs); - } - + @Override public void collectVars(TObjectIntHashMap allVars, TIntHashSet vars) { @@ -164,11 +140,6 @@ public class ERuleset extends SimplifiableExpression { in.collectVars(allVars, vars); } - @Override - public void collectEffects(THashSet effects) { - throw new InternalCompilerError(location, getClass().getSimpleName() + " does not support collectEffects."); - } - @Override public Expression resolve(TranslationContext context) { throw new InternalCompilerError();