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%2FCHRRelation.java;h=5436fae95a2204e884f9828e7beef2ec7d70200f;hb=21eae91e860f9f3cdb9cd0ee6fded24cdb8ca2f5;hp=dc8235884c1ad33c617fc69577b07ca5d6dbad58;hpb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/CHRRelation.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/CHRRelation.java index dc8235884..5436fae95 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/CHRRelation.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/chr/CHRRelation.java @@ -1,13 +1,22 @@ package org.simantics.scl.compiler.elaboration.chr; +import org.simantics.scl.compiler.types.TPred; import org.simantics.scl.compiler.types.TVar; import org.simantics.scl.compiler.types.Type; import org.simantics.scl.compiler.types.Types; import org.simantics.scl.compiler.types.kinds.Kinds; +import gnu.trove.set.hash.THashSet; + public interface CHRRelation { public static final TVar A = Types.var(Kinds.STAR); TVar[] getTypeVariables(); Type[] getParameterTypes(); + TPred[] getTypeConstraints(); + default String[] getFieldNames() { + return null; + } + void collectEnforceEffects(THashSet effects); + void collectQueryEffects(THashSet effects); }