úÎ!]IXM      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLSafe2EXVC.safe-exceptionsKWrap up a synchronous exception to be treated as an asynchronous exception#This is intended to be created via Asafe-exceptionsKWrap up an asynchronous exception to be treated as a synchronous exception#This is intended to be created via @safe-exceptionsException type thrown by  .ÿ4Note that the second field of the data constructor depends on GHC/base version. For base 4.9 and GHC 8.0 and later, the second field is a call stack. Previous versions of GHC and base do not support call stacks, and the field is simply unit (provided to make pattern matching across GHC versions easier).safe-exceptions'Synchronously throw the given exceptionsafe-exceptions Synonym for safe-exceptions Synonym for  safe-exceptions“A convenience function for throwing a user error. This is useful for cases where it would be too high a burden to define your own exception type.!This throws an exception of type U. When GHC supports it (base 4.9 and GHC 8.0 and onward), it includes a call stack.!safe-exceptions2Throw an asynchronous exception to another thread.8Synchronously typed exceptions will be wrapped into an , see Ahttps://github.com/fpco/safe-exceptions#determining-sync-vs-async:It's usually a better idea to use the async package, see 2https://github.com/fpco/safe-exceptions#quickstart"safe-exceptionsWGenerate a pure value which, when forced, will synchronously throw the given exceptionCGenerally it's better to avoid using this function and instead use , see 2https://github.com/fpco/safe-exceptions#quickstart#safe-exceptionsSame as upstream M-, but will not catch asynchronous exceptions$safe-exceptionsM specialized to only catching s%safe-exceptions#/ specialized to catch all synchronous exception&safe-exceptionsSame as #P, but fully force evaluation of the result value to find all impure exceptions.Nsafe-exceptionsInternal helper function'safe-exceptions&/ specialized to catch all synchronous exception(safe-exceptions# without async exception safetypGenerally it's better to avoid using this function since we do not want to recover from async exceptions, see 2https://github.com/fpco/safe-exceptions#quickstart)safe-exceptions) is like #‰ but it takes an extra argument which is an exception predicate, a function which selects which type of exceptions we're interested in.*safe-exceptionsFlipped version of #+safe-exceptionsO specialized to only catching s,safe-exceptionsFlipped version of %-safe-exceptionsFlipped version of &.safe-exceptionsFlipped version of '/safe-exceptionsFlipped version of (pGenerally it's better to avoid using this function since we do not want to recover from async exceptions, see 2https://github.com/fpco/safe-exceptions#quickstart0safe-exceptionsFlipped ).1safe-exceptionsSame as upstream P-, but will not catch asynchronous exceptions2safe-exceptionsP specialized to only catching s3safe-exceptions10 specialized to catch all synchronous exceptions4safe-exceptionsSame as 1P, but fully force evaluation of the result value to find all impure exceptions.5safe-exceptions40 specialized to catch all synchronous exceptions6safe-exceptions1 without async exception safetypGenerally it's better to avoid using this function since we do not want to recover from async exceptions, see 2https://github.com/fpco/safe-exceptions#quickstart7safe-exceptions A variant of 1J that takes an exception predicate to select which exceptions are caught.8safe-exceptionsAsync safe version of Q9safe-exceptionsLike 81, but provides the handler the thrown exception.:safe-exceptionsAsync safe version of R;safe-exceptionsAsync safe version of S<safe-exceptionsAsync safe version of T=safe-exceptionsAsync safe version of U>safe-exceptions A variant of =D where the return value from the first computation is not required.?safe-exceptionsAsync safe version of R5 with access to the exception in the cleanup action.@safe-exceptions1Convert an exception into a synchronous exception0For synchronous exceptions, this is the same as F. For asynchronous exceptions, this will wrap up the exception with Asafe-exceptions3Convert an exception into an asynchronous exception1For asynchronous exceptions, this is the same as E. For synchronous exceptions, this will wrap up the exception with Bsafe-exceptions+Check if the given exception is synchronousCsafe-exceptions,Check if the given exception is asynchronousDsafe-exceptionsSame as upstream V-, but will not catch asynchronous exceptionsEsafe-exceptionsSame as DP, but fully force evaluation of the result value to find all impure exceptions.Fsafe-exceptionsD without async exception safetypGenerally it's better to avoid using this function since we do not want to recover from async exceptions, see 2https://github.com/fpco/safe-exceptions#quickstartG    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG !"#$%&'()*+,-./01234567DEF8:;<9=>?@ABC  W          !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO&P-4Q;Q=Q>Q?Q@GR.safe-exceptions-0.1.7.1-1dpT1bt2RnVBqsTeOEWJVKControl.Exception.SafebaseGHC.BaseassertData.Typeable.InternalTypeableGHC.IO.ExceptionSomeAsyncException IOExceptionGHC.Exception.Type SomeExceptiondisplayException fromException toException Exception(exceptions-0.10.4-622ySnQapwMAU2KS1exqorControl.Monad.Catch handleIOError catchIOErroruninterruptibleMask_mask_ MonadThrow MonadCatchgeneralBracketuninterruptibleMaskmask MonadMaskHandlerAsyncExceptionWrapperSyncExceptionWrapperStringExceptionthrowthrowIOthrowM throwStringthrowTo impureThrowcatchcatchIOcatchAny catchDeep catchAnyDeep catchAsync catchJusthandlehandleIO handleAny handleDeep handleAnyDeep handleAsync handleJusttrytryIOtryAnytryDeep tryAnyDeeptryAsynctryJust onException withExceptionbracketbracket_finallybracketOnErrorbracketOnError_bracketWithErrortoSyncExceptiontoAsyncExceptionisSyncExceptionisAsyncExceptioncatches catchesDeep catchesAsync$fExceptionStringException$fShowStringException$fExceptionSyncExceptionWrapper$fShowSyncExceptionWrapper $fExceptionAsyncExceptionWrapper$fShowAsyncExceptionWrapper evaluateDeepControl.Exception.Base