gnu.mapping
Class Environment

java.lang.Object
  |
  +--gnu.mapping.Procedure
        |
        +--gnu.mapping.Procedure1
              |
              +--gnu.mapping.NameMap
                    |
                    +--gnu.mapping.Environment
Direct Known Subclasses:
ObArray, ScmEnv

public class Environment
extends NameMap

An environment contains (name->value) bindings. Names are Strings that are compared by ==, not equal.


Field Summary
protected  TrivialConstraint trivialConstraint
           
protected  Constraint unboundConstraint
           
 
Fields inherited from class gnu.mapping.Procedure
noArgs, sym_name
 
Constructor Summary
Environment()
           
Environment(Environment previous)
           
Environment(int capacity)
           
 
Method Summary
 void addBinding(Binding binding)
           
 Binding addBinding(java.lang.String name, java.lang.Object value)
           
static Environment current()
          Deprecated.  
static void define_global(java.lang.String name, java.lang.Object new_value)
          Define name (interned) to have a given value.
 Binding define(java.lang.String name, java.lang.Object value)
           
static void defineFunction(Environment env, java.lang.String name, java.lang.Object new_value)
           
static void defineFunction(java.lang.String name, java.lang.Object new_value)
           
 Binding getBinding(java.lang.String name)
           
 java.lang.Object getChecked(java.lang.String name)
          Get the value bound to the given name.
static Environment getCurrent()
           
static Binding getCurrentBinding(java.lang.String name)
           
static java.lang.Object lookup_global(java.lang.String name)
           
 Binding lookup(java.lang.String name)
          Search for a variable binding by name.
static void put_global(java.lang.String name, java.lang.Object new_value)
          Define name (interned) to have a given value.
 java.lang.Object put(java.lang.Object name, java.lang.Object value)
           
 java.lang.Object put(java.lang.String name, java.lang.Object value)
           
 void remove(Binding binding)
           
 java.lang.Object remove(java.lang.Object name)
           
 java.lang.Object remove(java.lang.String name)
           
static void setCurrent(Environment env)
           
 java.lang.String toString()
           
static Environment user()
           
 
Methods inherited from class gnu.mapping.NameMap
apply1, get, set1
 
Methods inherited from class gnu.mapping.Procedure1
apply0, apply2, apply3, apply4, applyN, numArgs
 
Methods inherited from class gnu.mapping.Procedure
apply, checkArgCount, getName, getSetter, maxArgs, minArgs, name, print, set0, setN, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

trivialConstraint

protected TrivialConstraint trivialConstraint

unboundConstraint

protected Constraint unboundConstraint
Constructor Detail

Environment

public Environment()

Environment

public Environment(int capacity)

Environment

public Environment(Environment previous)
Method Detail

user

public static Environment user()

lookup_global

public static java.lang.Object lookup_global(java.lang.String name)
                                      throws UnboundSymbol

define_global

public static void define_global(java.lang.String name,
                                 java.lang.Object new_value)
Define name (interned) to have a given value.

defineFunction

public static void defineFunction(java.lang.String name,
                                  java.lang.Object new_value)

defineFunction

public static void defineFunction(Environment env,
                                  java.lang.String name,
                                  java.lang.Object new_value)

put_global

public static void put_global(java.lang.String name,
                              java.lang.Object new_value)
Define name (interned) to have a given value.

current

public static Environment current()
Deprecated.  


getCurrent

public static Environment getCurrent()

setCurrent

public static void setCurrent(Environment env)

getBinding

public Binding getBinding(java.lang.String name)

getCurrentBinding

public static Binding getCurrentBinding(java.lang.String name)

lookup

public Binding lookup(java.lang.String name)
Search for a variable binding by name.
Parameters:
sym - the (interned) name of the binding to search for
Returns:
the value of the binding, or null if not found

define

public Binding define(java.lang.String name,
                      java.lang.Object value)

addBinding

public void addBinding(Binding binding)

addBinding

public Binding addBinding(java.lang.String name,
                          java.lang.Object value)

remove

public java.lang.Object remove(java.lang.String name)

remove

public java.lang.Object remove(java.lang.Object name)

remove

public void remove(Binding binding)

getChecked

public java.lang.Object getChecked(java.lang.String name)
Get the value bound to the given name.
Overrides:
getChecked in class NameMap
Throws:
UnboundSymbol - the name has no binding
See Also:
NameMap.get(Object)

put

public java.lang.Object put(java.lang.String name,
                            java.lang.Object value)
Overrides:
put in class NameMap

put

public java.lang.Object put(java.lang.Object name,
                            java.lang.Object value)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object