|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.onemind.commons.java.datastructure.NametableStack.LocalNametable
private static class NametableStack.LocalNametable
The local nametable defines a scope where local variables mask out the global variables, but the global variable can still be accessed. This is useful for implementing function context
| Field Summary | |
|---|---|
private Nametable |
_global
the global map |
private java.util.Map |
_locals
the local variables |
private int |
_scope
the scope |
| Constructor Summary | |
|---|---|
private |
NametableStack.LocalNametable(Nametable global,
int scope)
Constructor |
| Method Summary | |
|---|---|
java.lang.Object |
access(java.lang.String name)
Access the value associated with name |
java.util.Map |
asMap()
Return map representation of this nametable |
java.lang.Object |
assign(java.lang.String name,
java.lang.Object value)
Assign a variable in the name table |
boolean |
containsName(java.lang.String key)
Whether the nametable contains the name |
void |
declare(java.lang.String name,
java.lang.Object value)
Declare a variable in the name table |
private Nametable |
getGlobal()
Get the global |
java.lang.String |
toString()
|
void |
undeclare(java.lang.String name)
Undeclare the name |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
private final java.util.Map _locals
private final Nametable _global
private final int _scope
| Constructor Detail |
|---|
private NametableStack.LocalNametable(Nametable global,
int scope)
global - the globalscope - the scope # where this local nametabe is openned| Method Detail |
|---|
private Nametable getGlobal()
public boolean containsName(java.lang.String key)
containsName in interface Nametablekey - the name
public void declare(java.lang.String name,
java.lang.Object value)
declare in interface Nametablename - the namevalue - the value
public java.lang.Object assign(java.lang.String name,
java.lang.Object value)
assign in interface Nametablename - the namevalue - the value
public java.lang.Object access(java.lang.String name)
access in interface Nametablepublic void undeclare(java.lang.String name)
undeclare in interface Nametablepublic java.lang.String toString()
toString in class java.lang.Objectpublic java.util.Map asMap()
Nametable
asMap in interface Nametable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||