// Copyright (c) 1996-2002 Brian D. Carlstrom

package bdc.scheme.exception;

import bdc.scheme.SchemeException;

/**
    Exception used to unwind the stack in non-error conditions.

    See bdc.scheme.procedure.CallCC and bdc.scheme.expression.Expression
*/
public class CallCCException extends SchemeException
{
    /**
        the value we are trying to return
    */
    public Object value;

    /**
        the ExitProcedure we came from
    */
    public Object exitProcedure;

    /**
        Simple constructor
    */
    public CallCCException (Object value, Object exitProcedure)
    {
        this.value         = value;
        this.exitProcedure = exitProcedure;
    }
}
