public class Closure extends Procedure implements NamedValue
Modifier and Type | Field and Description |
---|---|
boolean |
arity |
Expression |
body |
int[] |
boxes |
Value[] |
env |
int |
fcount |
annotations, EMPTYSET
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
Constructor and Description |
---|
Closure() |
Closure(boolean arity,
int fcount,
Expression body,
Value[] env,
int[] boxes) |
Modifier and Type | Method and Description |
---|---|
void |
apply(Interpreter r)
Called when applying this procedure to a number of arguments in
the Interpreter's vlr register.
|
void |
deserialize(Deserializer s)
All Expressions must implement a default (no-argument) constructor.
|
void |
display(ValueWriter w) |
Value |
express()
A debugging function, express returns a Scheme value that describes
this expression.
|
void |
serialize(Serializer s)
All Expressions must implement a default (no-argument) constructor.
|
boolean |
visit(ExpressionVisitor v) |
error, throwArgSizeException, throwNestedPrimException, throwNestedPrimException, throwPrimException
displayNamedOpaque, equals, eqv, eval, getValue, synopsis, synopsis, toString, valueEqual, valueHashCode, write, writeReplace
deserializeAnnotations, getAnnotation, getAnnotation, getAnnotationKeys, getAnnotations, getName, readExternal, readResolve, serializeAnnotations, setAnnotation, setAnnotation, setName, visitAnnotations, writeExternal
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
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getName, setName
public boolean arity
public int fcount
public int[] boxes
public Value[] env
public Expression body
public Closure(boolean arity, int fcount, Expression body, Value[] env, int[] boxes)
public Closure()
public void apply(Interpreter r) throws ContinuationException
Procedure
apply
in class Procedure
r
- the InterpreterContinuationException
public void display(ValueWriter w) throws java.io.IOException
public void serialize(Serializer s) throws java.io.IOException
Expression
serialize
in class Expression
s
- the Serializerjava.io.IOException
public Value express()
Expression
public void deserialize(Deserializer s) throws java.io.IOException
Expression
deserialize
in class Expression
s
- the Deserializerjava.io.IOException
public boolean visit(ExpressionVisitor v)
visit
in interface ExpressionVisitee
visit
in class Expression