X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Finternal%2Fcodegen%2Fchr%2FCHRCodeGenerator.java;fp=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Finternal%2Fcodegen%2Fchr%2FCHRCodeGenerator.java;h=0000000000000000000000000000000000000000;hb=a2df536f7fc878982c6c960a79ed49f350cddc6f;hp=3a249c5deabaf38228a9fc4b268ecf5f01272832;hpb=5f0ad7a26810df602600c5eddad317588fce0ac4;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/chr/CHRCodeGenerator.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/chr/CHRCodeGenerator.java deleted file mode 100644 index 3a249c5de..000000000 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/chr/CHRCodeGenerator.java +++ /dev/null @@ -1,100 +0,0 @@ -package org.simantics.scl.compiler.internal.codegen.chr; - -import java.util.ArrayList; - -import org.cojen.classfile.TypeDesc; -import org.objectweb.asm.Opcodes; -import org.simantics.scl.compiler.elaboration.chr.CHRRuleset; -import org.simantics.scl.compiler.elaboration.chr.relations.CHRConstraint; -import org.simantics.scl.compiler.internal.codegen.references.BoundVar; -import org.simantics.scl.compiler.internal.codegen.utils.ClassBuilder; -import org.simantics.scl.compiler.internal.codegen.utils.Constants; -import org.simantics.scl.compiler.internal.codegen.utils.MethodBuilderBase; -import org.simantics.scl.compiler.internal.codegen.utils.ModuleBuilder; - -public class CHRCodeGenerator { - - public static final TypeDesc FACT_ID_TYPE = TypeDesc.INT; - private static final String FactActivationQueue_name = "org/simantics/scl/runtime/chr/FactActivationQueue"; - private static final TypeDesc FactActivationQueue = TypeDesc.forClass(FactActivationQueue_name); - private static final String QUEUE = "queue"; - - public static void generateStore(ModuleBuilder moduleBuilder, CHRRuleset ruleset) { - ClassBuilder storeClassBuilder = new ClassBuilder(moduleBuilder, Opcodes.ACC_PUBLIC, ruleset.storeClassName, "java/lang/Object"); - if(ruleset.parameters == null) - ruleset.parameters = new BoundVar[0]; - ruleset.parameterTypeDescs = moduleBuilder.getJavaTypeTranslator().getTypeDescs(ruleset.parameters); - - ArrayList hashIndexInitializations = new ArrayList<>(); - for(CHRConstraint constraint : ruleset.constraints) - generateFact(storeClassBuilder, constraint, hashIndexInitializations); - - // Fields - for(int i=0;i hashIndexInitializations) { - CHRFactCodeGenerator generator = new CHRFactCodeGenerator(storeClassBuilder, constraint); - generator.generate(hashIndexInitializations); - } -}