Gee.HashMap<int,Scope> indexedScopes;
bool munge = true;
-
+ int expN = 0;
public ScopeParser(TokenStream ts) {
this.ts = ts; // {TokenStream}
//this.logR("parseScope GOT VAR : <B>" + token.toString() + "</B>");
if (token.type != "NAME") {
- for(var i = Int.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());
}
break;
//println("<B>SID</B>");
default:
- if (token.type != 'KEYW') {
+ if (token.type != "KEYW") {
break;
}
//print('SCOPE-KEYW:' + token.toString());
symbol = token.data;
- if (this.mode == 'BUILDING_SYMBOL_TREE') {
+ if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
if (token.name == "EVAL") {
// look for eval:var:noreplace\n
//print("MATCH!?");
var _t = this;
+
+
token.prefix.replace(/eval:var:([a-z_]+)/ig, function(m, a) {
//print("GOT: " + a);
var hi = _t.getIdentifier(a, scope, token);
}
//print("<<< EXIT SCOPE");
//print("<<<<<<<EXIT SCOPE ERR?" +this.scopes.length);
- },
+ }
+
- expN : 0,
+
parseExpression : function(scope) {
// Parse the expression until we encounter a comma or a semi-colon