-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Multiple Exceptions
--
-- Exception type that supports reporting multiple exceptions
@package multi-except
@version 0.2.0.0
module Control.Applicative.MultiExcept
-- | A MultiExcept is a success value, or one or more errors.
data MultiExcept err a
-- | Convert an Either to a MultiExcept.
fromEither :: Either err a -> MultiExcept err a
-- | Convert a multi-error Either to a MultiExcept.
fromEitherPoly :: Either (DNonEmpty err) a -> MultiExcept err a
-- | Join nested MultiExcepts with the same error type. Note that
-- this doesn't imply a useful Monad instance. The instance
-- defined in terms of join discards errors on the RHS of
-- >>=.
join :: MultiExcept err (MultiExcept err a) -> MultiExcept err a
-- | Run the computation.
runMultiExcept :: MultiExcept err a -> Either (DNonEmpty err) a
-- | Embeds a value into a MultiExcept context.
succeed :: forall err a. a -> MultiExcept err a
-- | Throw a single error.
throwError :: forall a err. err -> MultiExcept err a
-- | Throw one or more errors.
throwErrors :: forall a err. DNonEmpty err -> MultiExcept err a
instance (GHC.Show.Show a, GHC.Show.Show err) => GHC.Show.Show (Control.Applicative.MultiExcept.MultiExcept err a)
instance (GHC.Read.Read a, GHC.Read.Read err) => GHC.Read.Read (Control.Applicative.MultiExcept.MultiExcept err a)
instance (GHC.Classes.Ord a, GHC.Classes.Ord err) => GHC.Classes.Ord (Control.Applicative.MultiExcept.MultiExcept err a)
instance (GHC.Classes.Eq a, GHC.Classes.Eq err) => GHC.Classes.Eq (Control.Applicative.MultiExcept.MultiExcept err a)
instance GHC.Base.Functor (Control.Applicative.MultiExcept.MultiExcept err)
instance GHC.Base.Applicative (Control.Applicative.MultiExcept.MultiExcept err)
instance Data.Functor.Alt.Alt (Control.Applicative.MultiExcept.MultiExcept err)