gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
MicroJavaInput, constructor, other improvements
[mjc2wsl.git] / src / com / quemaster / transformations / mjc2wsl / mjc2wsl.java
index 233d5ae..3bbdf6e 100644 (file)
@@ -1,6 +1,6 @@
 package com.quemaster.transformations.mjc2wsl;
 /*
 package com.quemaster.transformations.mjc2wsl;
 /*
-   Copyright (C) 2014,2015, 2016  Doni Pracner
+   Copyright (C) 2014,2015, 2016, 2018  Doni Pracner
    
     This file is part of mjc2wsl.
 
    
     This file is part of mjc2wsl.
 
@@ -152,7 +152,7 @@ public class mjc2wsl{
                        return versionN;
        }
        
                        return versionN;
        }
        
-       MicroJavaInput mjInput = new MicroJavaInput();
+       private MicroJavaInput mjInput;
 
        private PrintWriter out = null;
 
 
        private PrintWriter out = null;
 
@@ -179,8 +179,15 @@ public class mjc2wsl{
 
        public String createStandardStart(int numWords){
                StringBuilder ret = new StringBuilder(
 
        public String createStandardStart(int numWords){
                StringBuilder ret = new StringBuilder(
-                       "C:\" This file automatically converted from microjava bytecode\";\n"
-                       +"C:\" with mjc2wsl "+getVersion()+"\";\n");
+                       "C:\" This file was automatically converted from microjava bytecode\n"
+                       +"    using mjc2wsl "+getVersion()+"\n");
+
+               ret.append("   -options:");
+               ret.append("\n    localsAsArrays:"+genLocalsAsArray);
+               ret.append("\n    localVarBlocks:"+genLocalVars);
+               ret.append("\n    popPush:"+genPopPush);
+               ret.append("\n    inlinePrint:"+genInlinePrint);
+               ret.append("\n\";\n");
 
                ret.append("\nBEGIN");
                ret.append("\nVAR <\n\t");
 
                ret.append("\nBEGIN");
                ret.append("\nVAR <\n\t");
@@ -357,12 +364,10 @@ public class mjc2wsl{
        }
 
        public void convertStream(InputStream ins) throws Exception{
        }
 
        public void convertStream(InputStream ins) throws Exception{
-               mjInput.setStream(ins);
-               //process start 
-               mjInput.processHeader(this);
-               
-               prl(createStandardStart(mjInput.getNumberOfWords(this)));
-               prl("SKIP;\n ACTIONS a" + (14 + mjInput.getMainAdr(this)) + " :");
+               mjInput = new MicroJavaInput(ins);
+
+               prl(createStandardStart(mjInput.getNumberOfWords()));
+               prl("SKIP;\n ACTIONS a" + (14 + mjInput.getMainAdr()) + " :");
 
                // the number of Locals for procedures; need to remember it for exits
                int numberOfLocals = 0;
 
                // the number of Locals for procedures; need to remember it for exits
                int numberOfLocals = 0;
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner