-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Multiple Exceptions
--
-- Report multiple errors, or a single correct value.
@package multi-except
@version 1.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 (NonEmpty 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
or :: MultiExcept err a -> MultiExcept err a -> MultiExcept err a
-- | Run the computation.
runMultiExcept :: MultiExcept err a -> Either (NonEmptyDList 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. NonEmpty err -> MultiExcept err a
mapMultiExcept :: (err -> err') -> (a -> a') -> MultiExcept err a -> MultiExcept err' a'
instance (GHC.Show.Show a, GHC.Show.Show err) => GHC.Show.Show (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 Data.Bifunctor.Bifunctor Control.Applicative.MultiExcept.MultiExcept
instance GHC.Base.Applicative (Control.Applicative.MultiExcept.MultiExcept err)
instance Data.Foldable.Foldable (Control.Applicative.MultiExcept.MultiExcept err)
instance Data.Traversable.Traversable (Control.Applicative.MultiExcept.MultiExcept err)
instance GHC.Classes.Eq a => GHC.Classes.Eq (Control.Applicative.MultiExcept.NonEmptyDList a)
instance GHC.Classes.Ord a => GHC.Classes.Ord (Control.Applicative.MultiExcept.NonEmptyDList a)
instance GHC.Show.Show a => GHC.Show.Show (Control.Applicative.MultiExcept.NonEmptyDList a)
instance GHC.Base.Functor Control.Applicative.MultiExcept.NonEmptyDList