kawa.standard

Class callcc

Implemented Interfaces:
Named

public class callcc
extends MethodProc

Implement the Scheme standard function "call-with-current-continuation". This is a restricted version, that only works for escape-like applications.

Field Summary

static callcc
callcc

Fields inherited from class gnu.mapping.MethodProc

NO_MATCH, NO_MATCH_AMBIGUOUS, NO_MATCH_BAD_TYPE, NO_MATCH_TOO_FEW_ARGS, NO_MATCH_TOO_MANY_ARGS, argTypes

Fields inherited from class gnu.mapping.ProcedureN

noArgs

Method Summary

void
apply(CallContext ctx)
Call this Procedure using the explicit-CallContext-convention.
int
match1(Object proc, CallContext ctx)
Pass one argument.
int
numArgs()
Return minArgs()|(maxArgs<<12).

Methods inherited from class gnu.mapping.MethodProc

applyN, getParameterType, isApplicable, matchFailAsException, mostSpecific, mostSpecific, numParameters, resolveParameterTypes

Methods inherited from class gnu.mapping.ProcedureN

apply0, apply1, apply2, apply3, apply4, applyN

Methods inherited from class gnu.mapping.Procedure

apply, apply, apply0, apply1, apply2, apply3, apply4, applyN, check0, check1, check2, check3, check4, checkArgCount, checkN, getSetter, getSourceLocation, match0, match1, match2, match3, match4, matchN, maxArgs, minArgs, numArgs, set0, set1, setN, setSetter, setSourceLocation, toString

Methods inherited from class gnu.mapping.PropertySet

getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol

Field Details

callcc

public static final callcc callcc

Method Details

apply

public void apply(CallContext ctx)
            throws Throwable
Call this Procedure using the explicit-CallContext-convention. The input arguments are (by default) in stack.args; the result is written to ctx.consumer.
Overrides:
apply in interface Procedure

match1

public int match1(Object proc,
                  CallContext ctx)
Pass one argument.
Overrides:
match1 in interface Procedure
Returns:
non-negative if the match succeeded, else negative.

numArgs

public int numArgs()
Return minArgs()|(maxArgs<<12).
Overrides:
numArgs in interface Procedure