sisc.env
Class LexicalEnvironment

java.lang.Object
  extended by sisc.util.Util
      extended by sisc.data.Expression
          extended by sisc.data.Value
              extended by sisc.env.LexicalEnvironment
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable, Immediate, ExpressionVisitee, Version

public class LexicalEnvironment
extends Value

See Also:
Serialized Form

Field Summary
 boolean locked
           
 LexicalEnvironment parent
           
 Value[] vals
           
 
Fields inherited from class sisc.data.Expression
annotations, EMPTYSET
 
Fields inherited from class sisc.util.Util
BACKQUOTE, BEGIN, bundles, caseSensitive, EMPTYLIST, EMPTYVEC, EOF, ERRORK, EVAL, EXPSC, EXPTOP, FALSE, FCONT, FIVE, JEXCEPTION, LAMBDA, LOCATION, maxFloatPrecision, MESSAGE, minFloatPrecision, NAME, OTHER, PARENT, permitInterrupts, QUOTE, QUOTESYM, REPORT, SETBANG, SISC, SISC_SPECIFIC, SISCB, SOURCE_COLUMN, SOURCE_FILE, SOURCE_LINE, SYMENV, THIS, TOPLEVEL, TRUE, UNQUOTE, UNQUOTE_SPLICING, VOID, ZV
 
Fields inherited from interface sisc.util.Version
VERSION
 
Constructor Summary
LexicalEnvironment()
           
LexicalEnvironment(Value[] vals, LexicalEnvironment parent)
           
 
Method Summary
 void deserialize(Deserializer s)
          All Expressions must implement a default (no-argument) constructor.
 void display(ValueWriter w)
           
static void lock(LexicalEnvironment env)
           
 Value lookup(int depth, int pos)
           
 void serialize(Serializer s)
          All Expressions must implement a default (no-argument) constructor.
 void set(int depth, int pos, Value v)
           
 boolean visit(ExpressionVisitor v)
           
 
Methods inherited from class sisc.data.Value
apply, displayNamedOpaque, equals, eqv, eval, express, getValue, synopsis, synopsis, toString, valueEqual, valueHashCode, write, writeReplace
 
Methods inherited from class sisc.data.Expression
deserializeAnnotations, getAnnotation, getAnnotation, getAnnotationKeys, getAnnotations, getName, readExternal, readResolve, serializeAnnotations, setAnnotation, setAnnotation, setName, visitAnnotations, writeExternal
 
Methods inherited from class sisc.util.Util
annotated, annotatedAppEval, append, argCheck, argsToSymbols, assq, bininport, bininstream, binoutport, binoutstream, box, character, charinport, charinreader, charoutport, charoutwriter, charsetFromString, chr, cont, currentClassLoader, env, error, error, error, error, error, error, error, expr, getDefaultCharacterSet, immutablePair, immutableVector, inport, javaExceptionToString, javaWrap, justify, length, liMessage, liMessage, liMessage, liMessage, liMessage, liMessage, liMessage, list, list, list, list, list, makeURL, mapcar, memq, nlib, num, outport, pair, pairToExpressions, pairToExpVect, pairToValues, proc, read, registerBundle, reverse, reverseInPlace, simpleErrorToString, sourceAnnotations, str, string, sym, symbol, symval, truePair, truth, truth, typeError, typeError, updateName, url, url, url, valArrayToList, valArrayToList, valArrayToVec, vec, warn, warn, warn
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

locked

public boolean locked

parent

public LexicalEnvironment parent

vals

public Value[] vals
Constructor Detail

LexicalEnvironment

public LexicalEnvironment()

LexicalEnvironment

public LexicalEnvironment(Value[] vals,
                          LexicalEnvironment parent)
Method Detail

lock

public static final void lock(LexicalEnvironment env)

lookup

public final Value lookup(int depth,
                          int pos)

set

public final void set(int depth,
                      int pos,
                      Value v)

display

public void display(ValueWriter w)
             throws java.io.IOException
Specified by:
display in class Value
Throws:
java.io.IOException

serialize

public void serialize(Serializer s)
               throws java.io.IOException
Description copied from class: Expression
All Expressions must implement a default (no-argument) constructor. Those that wish to be serialized to a heap must implement both this and the deserialize method. The Expression may use any method of the Serializer, which implements java.io.DataOutput to write its state.

Overrides:
serialize in class Expression
Parameters:
s - the Serializer
Throws:
java.io.IOException

deserialize

public void deserialize(Deserializer s)
                 throws java.io.IOException
Description copied from class: Expression
All Expressions must implement a default (no-argument) constructor. Those that wish to b serialized to a heap must implement both this and the serialize method. The Expression may use any method of the DataInput stream and the Deserializer serialization context to read its state.

Overrides:
deserialize in class Expression
Parameters:
s - the Deserializer
Throws:
java.io.IOException

visit

public boolean visit(ExpressionVisitor v)
Specified by:
visit in interface ExpressionVisitee
Overrides:
visit in class Expression