de.grogra.xl.vmx
Class AbruptCompletion

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.lang.RuntimeException
              extended by de.grogra.xl.vmx.AbruptCompletion
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
AbruptCompletion.Break, AbruptCompletion.Return, AbruptCompletion.Throw

public abstract class AbruptCompletion
extends java.lang.RuntimeException

Base class for abrupt completions. An abrupt completion is one of the following:

Abrupt completions are RuntimeExceptions that have to be caught at suitable locations.

The class AbruptCompletion.Nonlocal wraps an abrupt completion that has to be transferred (non-locally) to a statically containing routine invocation before Java's catching mechanism comes into play.

Author:
Ole Kniemeyer
See Also:
Serialized Form

Nested Class Summary
static class AbruptCompletion.Break
          An abrupt completion due to a break or continue.
static class AbruptCompletion.Nonlocal
          This class wraps an abrupt completion that has to be transferred (non-locally) to a statically containing routine invocation before Java's catching mechanism comes into play.
static class AbruptCompletion.Return
          An abrupt completion due to a return.
static class AbruptCompletion.Throw
          An abrupt completion due to a thrown Throwable.
 
Method Summary
abstract  void dispose()
           
abstract  int getLabel()
           
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

dispose

public abstract void dispose()

getLabel

public abstract int getLabel()