sisc.env
Class Parameter

java.lang.Object
  extended by sisc.util.Util
      extended by sisc.data.Expression
          extended by sisc.data.Value
              extended by sisc.data.Procedure
                  extended by sisc.env.Parameter
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable, Immediate, ExpressionVisitee, Version
Direct Known Subclasses:
NativeParameter, SchemeParameter

public abstract class Parameter
extends Procedure

See Also:
Serialized Form

Field Summary
 
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
Parameter()
           
 
Method Summary
 void apply(Interpreter r)
          Called when applying this procedure to a number of arguments in the Interpreter's vlr register.
abstract  Value getValue(Interpreter r)
          Called to obtain the value of this Value.
abstract  void setValue(Interpreter r, Value v)
           
 
Methods inherited from class sisc.data.Procedure
error, throwArgSizeException, throwNestedPrimException, throwNestedPrimException, throwPrimException
 
Methods inherited from class sisc.data.Value
display, displayNamedOpaque, equals, eqv, eval, express, synopsis, synopsis, toString, valueEqual, valueHashCode, write, writeReplace
 
Methods inherited from class sisc.data.Expression
deserialize, deserializeAnnotations, getAnnotation, getAnnotation, getAnnotationKeys, getAnnotations, getName, readExternal, readResolve, serialize, serializeAnnotations, setAnnotation, setAnnotation, setName, visit, 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
 

Constructor Detail

Parameter

public Parameter()
Method Detail

getValue

public abstract Value getValue(Interpreter r)
                        throws ContinuationException
Description copied from class: Value
Called to obtain the value of this Value. Simply this.

Specified by:
getValue in interface Immediate
Overrides:
getValue in class Value
Parameters:
r - the Interpreter
Returns:
the immediate value of this expression, or null if the value cannot be obtained immediately.
Throws:
ContinuationException

setValue

public abstract void setValue(Interpreter r,
                              Value v)
                       throws ContinuationException
Throws:
ContinuationException

apply

public void apply(Interpreter r)
           throws ContinuationException
Description copied from class: Procedure
Called when applying this procedure to a number of arguments in the Interpreter's vlr register. The code can return a value by setting the Interpreter's acc register and/or cause additional expressions to be evaluated by setting the Interpreter's nxp register.

Specified by:
apply in class Procedure
Parameters:
r - the Interpreter
Throws:
ContinuationException