findInFrame() private method

private findInFrame ( int id ) : Binding
id int
return Binding
        private static Binding findAndCache(LexicalEnvironment e, Symbol symbol)
        {
            if (e.statistics != null)
            {
                e.statistics.Lookups++;
            }
            var id = symbol.ID;

            while (e != null)
            {
                var b = e.findInFrame(id);
                if (b != null)
                {
                    symbol.Env = e;
                    return(symbol.CachedBinding = b);
                }
                e = e.parent;
            }
            throw undefined(symbol);
        }
Ejemplo n.º 2
0
 private static Binding findAndCache(LexicalEnvironment e, Symbol symbol)
 {
     if (e.statistics != null)
         e.statistics.Lookups++;
     var id = symbol.ID;
     while(e != null)
     {
         var b = e.findInFrame(id);
         if (b != null)
         {
             symbol.Env = e;
             return (symbol.CachedBinding = b);
         }
         e = e.parent;
     }
     throw undefined(symbol);
 }