if (this.mode == ScopeParserMode.BUILDING_SYMBOL_TREE) {
var identifier = scope.getIdentifier(token.data,token) ;
- if (identifier == false) {
+ if (identifier == null) {
scope.declareIdentifier(token.data, token);
} else {
token.identifier = identifier;
//println("GOT IDENT: <B>" + symbol + "</B><BR/>");
//println("GOT IDENT (2): <B>" + symbol + "</B><BR/>");
- identifier = this.getIdentifier(symbol, scope, token);
+ var identifier = this.getIdentifier(symbol, scope, token);
- if (identifier == false) {
+ if (identifier == null) {
// BUG!find out where builtin is defined...
if (symbol.length <= 3 && Scope.builtin.indexOf(symbol) < 0) {
// Here, we found an undeclared and un-namespaced symbol that is
var _t = this;
var regex = new GLib.Regex ("eval:var:([a-z_]+)",GLib.RegexCompileFlags.CASELESS );
-
-
-
+
regex.replace_eval (token.prefix, token.prefix.length, 0, 0, (match_info, result) => {
var a = match_info.fetch(0);
var hi = this.getIdentifier(a, scope, token);
var identifier = this.getIdentifier(symbol, scope, token);
//println("<B>??</B>");
- if (identifier == false) {
+ if (identifier == null) {
if (symbol.length <= 3 && Scope.builtin.indexOf(symbol) < 0) {
// Here, we found an undeclared and un-namespaced symbol that is
scope.preventMunging();
}
- Token getIdentifier(string symbol, Scope in_scope, Token token)
+ Token? getIdentifier(string symbol, Scope in_scope, Token token)
{
- string identifier;
+ Token identifier;
var scope = in_scope;
while (scope != null) {
identifier = scope.getIdentifier(symbol, token);
//println("ScopeParser.getIdentgetUsedSymbols("+symbol+")=" + scope.getUsedSymbols().join(','));
- if (identifier.length) {
+ if (identifier != null) {
return identifier;
}
scope = scope.parent;
}
- return "";
+ return null;
}
}