public class SULException extends RuntimeException
SUL to wrap any exceptions that occur during
the SUL.step(Object) methods.
Rationale for being unchecked: Implementors of a learning or equivalence checking algorithm that directly
operates on the SUL level usually have no sensible way of dealing with such an exception (comparable to when MembershipOracle.processQueries(java.util.Collection) throws a runtime exception). However, it may be of interest to
some components, like for instance a mapper that maps exceptions to special output symbols.
Caveat: When implementing your SUL.step(Object) method, never ever catch exceptions with a
catch(Throwable) statement! This would also catch internal VM-related errors such as StackOverflowError or OutOfMemoryError. Only ever catch Exception and any user-created subclasses of
Throwable that apply.
| Constructor and Description |
|---|
SULException(Throwable cause)
Creates a SULException wrapped around a
Throwable. |
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toStringCopyright © 2018. All rights reserved.