token = this.ts.nextTok();
//!this.debug|| print( token.toString());
// print('SCOPE-VAR-VAL:' + JSON.stringify(token, null, 4));
- if (!token) { // can return false at EOF!
+ if (token == null) { // can return false at EOF!
break;
}
- if (token.name == "VAR" || token.data == ',') { // kludge..
+ if (token.name == "VAR" || token.data == ",") { // kludge..
continue;
}
//this.logR("parseScope GOT VAR : <B>" + token.toString() + "</B>");
if (token.type != "NAME") {
- for(var i = Math.max(this.ts.cursor-10,0); i < this.ts.cursor+1; i++) {
+
+ for(var i = Int.max(this.ts.cursor-10,0); i < this.ts.cursor+1; i++) {
print(this.ts.tokens[i].toString());
}
print( "var without ident");
- Seed.quit()
+ GLib.Process.exit (0);
}
- if (this.mode == "BUILDING_SYMBOL_TREE") {
- identifier = scope.getIdentifier(token.data,token) ;
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
+ var identifier = scope.getIdentifier(token.data,token) ;
if (identifier == false) {
scope.declareIdentifier(token.data, token);
} else {
token.identifier = identifier;
- this.warn("(SCOPE) The variable " + token.data + ' (line:' + token.line + ") has already been declared in the same scope...");
+ this.warn("(SCOPE) The variable " + token.data + " (line:" + token.line + ") has already been declared in the same scope...");
}
}
token = this.ts.nextTok();
- !this.debug|| print(token.toString());
+ //!this.debug|| print(token.toString());
/*
assert token.getType() == Token.SEMI ||
token.getType() == Token.ASSIGN ||
} else {
//var bn = this.braceNesting;
var bn = this.braceNesting;
- var nts = [];
+ var nts = new Gee.ArrayList<Token>();
while (true) {
- if (!token || token.type == 'VOID' || token.data == ',') {
+ if (!token || token.type == "VOID" || token.data == ",") {
break;
}
- nts.push(token);
+ nts.add(token);
token = this.ts.nextTok();
}
- if (nts.length) {
+ if (nts.size > 0) {
var TS = this.ts;
this.ts = new TokenStream(nts);
this.parseExpression(scope);
token = this.ts.lookTok(1);
//!this.debug||
// print("AFTER EXP: " + token.toString());
- if (token.data == ';') {
+ if (token.data == ";") {
break;
}
}
//print('SCOPE-CURLY/PAREN:' + token.toString());
//println("<i>"+token.data+"</i>");
var curTS = this.ts;
- if (token.props) {
+ if (token.props.size() > 0) {
// { a : ... , c : .... }
+ var iter = token.props.map_iterator();
- for (var prop in token.props) {
+ while(iter.next()) {
+
+ TokenKeyMap val = iter.get_value(); // TokenKeyMap
// print('SCOPE-PROPS:' + JSON.stringify(token.props[prop],null,4));
- if (token.props[prop].val[0].data == 'function') {
+ if (val.vals.get(0).data == "function") {
// parse a function..
- this.ts = new TokenStream(token.props[prop].val);
+ this.ts = new TokenStream(val.vals);
this.ts.nextTok();
this.parseFunctionDeclaration(scope);
}
// key value..
- this.ts = new TokenStream(token.props[prop].val);
+ this.ts = new TokenStream(val.vals);
this.parseExpression(scope);
}