|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjsint.Procedure
public abstract class Procedure
Abstract superclass of Procedures. Procedures of no arguments, called "thunks", implement the Runnable interface. To invoke a Procedure from Java, use apply(Pair).
Field Summary | |
---|---|
int |
maxArgs
|
int |
minArgs
|
java.lang.String |
name
|
Constructor Summary | |
---|---|
Procedure()
|
|
Procedure(int minArgs,
int maxArgs)
|
Method Summary | |
---|---|
abstract java.lang.Object |
apply(java.lang.Object[] args)
Apply the procedure to an argument list, which is represented as a parameter-oriented array. |
java.lang.Object |
apply(Pair args)
Convert an argument list into an argument array, and call apply on that. |
java.lang.Object |
apply(SchemePair args)
|
static java.lang.Object |
catching(Procedure E,
Procedure F)
Like tryCatch, but returns wrapped exception. |
java.lang.String |
getName()
|
java.lang.Object[] |
makeArgArray(java.lang.Object[] code,
Evaluator eval,
LexicalEnvironment lexenv)
Take the code that represents a call, evaluate arguments in the calling lexical environment and put results into an argument array. |
java.lang.Object[] |
makeArgArray(Pair args)
Convert a list of arguments into an array expected by the procedure. |
int |
nParms()
How many parameters does this procedure have. |
void |
run()
|
java.lang.Object |
setName(java.lang.Object name)
If the procedure has not yet been named, name it. |
static java.lang.Object |
stripExceptionWrapper(java.lang.Object e)
|
static java.lang.Object |
synchronize(java.lang.Object x,
Procedure p)
|
static java.lang.Object |
throwObject(java.lang.Object e)
|
static java.lang.Object |
throwRuntimeException(java.lang.RuntimeException E)
provide scheme access to the exception throwing |
java.lang.String |
toString()
|
protected java.lang.String |
toStringArgs()
|
static java.lang.Object |
tryCatch(java.lang.Object E,
java.lang.Object F)
provide scheme access to the "try/catch" expression of Java |
static java.lang.Object |
tryFinally(java.lang.Object e,
java.lang.Object f)
Provide scheme access to finally - unwind-protect. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public java.lang.String name
public int minArgs
public int maxArgs
Constructor Detail |
---|
public Procedure()
public Procedure(int minArgs, int maxArgs)
Method Detail |
---|
public java.lang.String getName()
public java.lang.Object setName(java.lang.Object name)
public int nParms()
protected java.lang.String toStringArgs()
public java.lang.String toString()
toString
in class java.lang.Object
public void run()
run
in interface java.lang.Runnable
run
in interface SchemeProcedure
public abstract java.lang.Object apply(java.lang.Object[] args)
apply
in interface SchemeProcedure
public java.lang.Object apply(SchemePair args)
apply
in interface SchemeProcedure
public java.lang.Object apply(Pair args)
public static java.lang.Object catching(Procedure E, Procedure F)
public static java.lang.Object tryCatch(java.lang.Object E, java.lang.Object F)
public static java.lang.Object stripExceptionWrapper(java.lang.Object e)
public static java.lang.Object tryFinally(java.lang.Object e, java.lang.Object f)
public static java.lang.Object throwRuntimeException(java.lang.RuntimeException E) throws java.lang.RuntimeException
java.lang.RuntimeException
public static java.lang.Object throwObject(java.lang.Object e) throws java.lang.Throwable
java.lang.Throwable
public static java.lang.Object synchronize(java.lang.Object x, Procedure p)
public java.lang.Object[] makeArgArray(java.lang.Object[] code, Evaluator eval, LexicalEnvironment lexenv)
public java.lang.Object[] makeArgArray(Pair args)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |