for (var i = n-1; i >= 0; i--) {
if (!(tokens[i].is("WHIT") || tokens[i].is("COMM"))) return tokens[i];
}
+ return null;
},
var lt = this.lastSym(tokens, n);
Seed.print(JSON.stringify(lt));
if (lt.type != 'KEYW' || ['IF', 'WHILE'].indexOf(lt.name) < -1) {
- throw {
- name : "ArgumentError",
- message: "\n" + this.filename + ':' + this.line + " Error - return found after )"
- }
+ if (!this.ignoreBadGrammer) {
+ throw {
+ name : "ArgumentError",
+ message: "\n" + this.filename + ':' + this.line + " Error - return found after )"
+ }
+ }
}
if ((found == '}' || found == ']') && tokens.lastSym().data == ',') {
//print("Error - comma found before " + found);
//print(JSON.stringify(tokens.lastSym(), null,4));
- throw {
- name : "ArgumentError",
- message: "\n" + this.filename + ':' + this.line + " Error - comma found before " + found
- }
+ if (this.ignoreBadGrammer) {
+ print("\n" + this.filename + ':' + this.line + " Error - comma found before " + found);
+ } else {
+
+ throw {
+ name : "ArgumentError",
+ message: "\n" + this.filename + ':' + this.line + " Error - comma found before " + found
+ }
+ }
}
tokens.push(new Token(found, "PUNC", Lang.punc(found), this.line));