gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
mjc2wsl - dup, dup2 commands
[mjc2wsl.git] / src / mjc2wsl.java
index 82ae9cc..4b231aa 100644 (file)
@@ -463,8 +463,30 @@ public class mjc2wsl{
                                prl("tempArray[tempa+1]:=tempres ENDVAR;");
                                break;
                        }
-                       //TODO arraylength
-                       //TODO dup, dup2
+                       case arraylength :{
+                               prl(getTop());
+                               //TODO make an array length function of some sort!
+                               prl(createComment("array length not known - LENGTH not aplicable to arrays",C_ERR));
+                               message("array length not known - LENGTH not aplicable to arrays",M_ERR);
+                               prl(createComment("put 1 on the stack for consistency",C_SPEC));
+                               prl(cmdToEStack(1));
+                               break;
+                       }
+                       
+                       case dup : {
+                                       prl(getTop());
+                                       prl(cmdToEStack("tempa"));
+                                       prl(cmdToEStack("tempa"));
+                                       break;                                  
+                       }
+                       case dup2 : {
+                                       prl(getTopTwo());
+                                       prl(cmdToEStack("tempb"));
+                                       prl(cmdToEStack("tempa"));
+                                       prl(cmdToEStack("tempb"));
+                                       prl(cmdToEStack("tempa"));
+                                       break;                                  
+                       }
                        
                        case pop : {
                                        prl(cmdPopEStack());
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner