Package de.learnlib.exception
Class SULException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.lang.RuntimeException
-
- de.learnlib.exception.SULException
-
- All Implemented Interfaces:
Serializable
public class SULException extends RuntimeException
Unchecked exception class that can be used by implementors of aSULto wrap any exceptions that occur during theSUL.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 acatch(Throwable)statement! This would also catch internal VM-related errors such asStackOverflowErrororOutOfMemoryError. Only ever catchExceptionand any user-created subclasses ofThrowablethat apply.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SULException(@Nullable Throwable cause)Creates a SULException wrapped around aThrowable.
-
Method Summary
-
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
-