sisc.exprs.fp
Class FixedAppExp_0
java.lang.Object
sisc.util.Util
sisc.data.Expression
sisc.exprs.fp.FixedAppExp_0
- All Implemented Interfaces:
- java.io.Externalizable, java.io.Serializable, Immediate, OptimisticExpression, ExpressionVisitee, Version
- Direct Known Subclasses:
- FixedAppExp_1
public class FixedAppExp_0
- extends Expression
- implements Immediate, OptimisticExpression
- See Also:
- Serialized Form
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 |
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, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ref
public FreeReference ref
host
public OptimisticHost host
uexpPosition
public int uexpPosition
FixedAppExp_0
public FixedAppExp_0(FreeReference ref)
FixedAppExp_0
public FixedAppExp_0()
setHost
public void setHost(OptimisticHost host,
int uexpPos)
- Description copied from interface:
OptimisticExpression
- Called to set up backward references to the hosts
- Specified by:
setHost
in interface OptimisticExpression
eval
public void eval(Interpreter r)
throws ContinuationException
- Description copied from class:
Expression
- All expressions can be evaluated to some Scheme value. This function
implements the exact manner in which an expression is evaluated.
An expression, when evaluated, performs some action that results
in its value being placed in the acc register of the given
Interpreter.
An expression that immediately evaluates to a value (i.e. does not
require that an additional expression be evaluated to obtain its
value) must clear the nxp register by setting it to
null.
Otherwise, nxp should be set to the expression that is to
be evaluated next before this method returns.
- Specified by:
eval
in class Expression
- Parameters:
r
- the Interpreter
- Throws:
ContinuationException
doGetValue
public Value doGetValue(FixableProcedure proc,
Interpreter r)
throws ContinuationException
- Throws:
ContinuationException
getValue
public Value getValue(Interpreter r)
throws ContinuationException
- Description copied from class:
Expression
- If an expression implements the Immediate interface, it must
override getValue, which returns as a Value, the immediate value
of this expression.
- Specified by:
getValue
in interface Immediate
- Overrides:
getValue
in class Expression
- Parameters:
r
- the Interpreter
- Returns:
- the immediate value of this expression, or null if the value
cannot be obtained immediately.
- Throws:
ContinuationException
getOperands
public Expression[] getOperands()
forceRevert
public final void forceRevert(Interpreter r)
revert
public final void revert(Interpreter r)
revert
public final void revert(Interpreter r,
Expression[] rands)
revert
public final void revert(Interpreter r,
Expression[] rands,
int flags)
express
public Value express()
- Description copied from class:
Expression
- A debugging function, express returns a Scheme value that describes
this expression. See examples in sisc.exprs.*
- Specified by:
express
in class Expression
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
dropSafe
public void dropSafe()
- Description copied from interface:
OptimisticExpression
- Called to clear the safe expressions
- Specified by:
dropSafe
in interface OptimisticExpression