org.erights.e.elang.scope
Class InnerScope

java.lang.Object
  |
  +--org.erights.e.elang.scope.Scope
        |
        +--org.erights.e.elang.scope.InnerScope
All Implemented Interfaces:
Iteratable

public class InnerScope
extends Scope

Untamed: A Scope that represents a nested lexical scope.

Made after the fact from a ScopeMap (static info) and an EvalContext (runtime info).

Author:
E. Dean Tribble

Field Summary
private  EvalContext myEvalContext
           
 
Fields inherited from class org.erights.e.elang.scope.Scope
myScopeMap
 
Constructor Summary
InnerScope(ScopeMap scopeMap, EvalContext ctx)
          Enabled:
 
Method Summary
 void bindOuter(String name, Slot slot)
          Enabled:
 Scope diverge(String fqnPrefix)
          Enabled:
 String getOptFQNPrefix()
          Enabled: Returns null, since we're not at top level
 Slot getSlot(String name)
          Enabled:
 EvalContext newContext(int numLocals)
          Enabled:
 NounExpr reserveOuterNoun(String name)
          Enabled:
 String toString()
          Suppressed:
 
Methods inherited from class org.erights.e.elang.scope.Scope
asMap, bindFinal, bindings, bindings, cleanup, get, get, getScopeMap, in, iterate, maps, put
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

myEvalContext

private final EvalContext myEvalContext
Constructor Detail

InnerScope

public InnerScope(ScopeMap scopeMap,
                  EvalContext ctx)
Enabled:

Method Detail

getOptFQNPrefix

public String getOptFQNPrefix()
Enabled: Returns null, since we're not at top level

Specified by:
getOptFQNPrefix in class Scope

reserveOuterNoun

public NounExpr reserveOuterNoun(String name)
Enabled:

Specified by:
reserveOuterNoun in class Scope

getSlot

public Slot getSlot(String name)
Enabled:

Specified by:
getSlot in class Scope

bindOuter

public void bindOuter(String name,
                      Slot slot)
               throws AlreadyDefinedException
Enabled:

Specified by:
bindOuter in class Scope
AlreadyDefinedException

newContext

public EvalContext newContext(int numLocals)
Enabled:

Specified by:
newContext in class Scope

diverge

public Scope diverge(String fqnPrefix)
Enabled:

Specified by:
diverge in class Scope

toString

public String toString()
Suppressed:

Overrides:
toString in class Object
Returns:
a string representation of the object.


comments?