private Error processWordDirective(String str, String sourceLineNo) { Error err = new Error(); str = MyLibrary.removeBeginningAndEndingSpace(str); Memory var10000; String[] A; int noOfWords; int i; if (str.indexOf(58) != -1) { A = str.split("[ ]*:[ ]*"); if (A.length != 2) { err = new Error("Syntax Error @ line " + sourceLineNo, 1); return err; } if (!MyLibrary.isValidNumber(A[0]) || !MyLibrary.isValidNumber(A[0])) { err = new Error("Invalid Numaric Constant in Line : " + sourceLineNo, 1); return err; } noOfWords = MyLibrary.fromStringToInt(A[0]); i = MyLibrary.fromStringToInt(A[1]); if (i * 4 > Memory.currentStackAddress - Memory.currentDynamicDataAddress) { err = new Error("Segmentation Fault ! Unable To Allocate " + i + " Words !", 1); return err; } for (int i1 = 0; i1 < i; ++i1) { var10000 = this.Mem; Memory.addWordInDynamicMemory(noOfWords); } } else if (str.indexOf(44) != -1) { A = str.split("[ ]*,[ ]*"); noOfWords = A.length; if (noOfWords * 4 > Memory.currentStackAddress - Memory.currentDynamicDataAddress) { err = new Error("Segmentation Fault ! Unable To Allocate " + noOfWords + " Words !", 1); return err; } for (i = 0; i < A.length; ++i) { if (!MyLibrary.isValidNumber(A[i])) { err = new Error("Invalid Numaric Constant in Line : " + sourceLineNo, 1); return err; } var10000 = this.Mem; Memory.addWordInDynamicMemory(MyLibrary.fromStringToInt(A[i])); } } else { if (!MyLibrary.isValidNumber(str)) { err = new Error("Invalid Numaric Constant in Line : " + sourceLineNo, 1); return err; } var10000 = this.Mem; Memory.addWordInDynamicMemory(MyLibrary.fromStringToInt(str)); } return err; }