-- 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