]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/writer/ModuleWriter.java
SCL compiler generates line numbers to bytecode
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / internal / codegen / writer / ModuleWriter.java
index da986195b51000d091ed1f622b3b4c021b97ab68..e663c814e2f60b006fd06493ea11782795d98530 100644 (file)
@@ -10,6 +10,7 @@ import org.simantics.scl.compiler.internal.codegen.ssa.SSABlock;
 import org.simantics.scl.compiler.internal.codegen.ssa.SSAFunction;
 import org.simantics.scl.compiler.internal.codegen.ssa.SSAModule;
 import org.simantics.scl.compiler.internal.codegen.ssa.StaticField;
+import org.simantics.scl.compiler.internal.parsing.utils.LineLocator;
 import org.simantics.scl.compiler.types.TVar;
 import org.simantics.scl.compiler.types.Type;
 import org.simantics.scl.runtime.tuple.Tuple2;
@@ -19,15 +20,17 @@ import gnu.trove.map.hash.THashMap;
 public class ModuleWriter {
     
     SSAModule module;
+    LineLocator lineLocator;
     
     String moduleClassName;
     THashMap<Tuple2, JavaStaticField> externalConstantMap = 
                new THashMap<Tuple2, JavaStaticField>();
     int externalConstantId = 0;
     
-    public ModuleWriter(String moduleClassName) {
+    public ModuleWriter(String moduleClassName, LineLocator lineLocator) {
         this.module = new SSAModule();
         this.moduleClassName = moduleClassName;
+        this.lineLocator = lineLocator;
     }
 
     public CodeWriter createFunction(SCLConstant constant, TVar[] typeParameters,