A monad transformer wrapping m (Validation err a).
ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity IntValidationMonadT (Identity (Success 1))
ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity IntValidationMonadT (Identity (Failure "err"))
Constructors
ValidationMonadT (m (Validation err a))
Instances48MonadRWS, MonadError, MonadReader, MonadState, MonadWriter, MonadTrans, …
MonadRWS r w s m => MonadRWS r w s (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonad m => MonadError err (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression throwError "err" :: ValidationMonadT String Identity IntValidationMonadT (Identity (Failure "err"))
Example1 expression catchError (throwError "err" :: ValidationMonadT String Identity Int) (\e -> pure (length e))ValidationMonadT (Identity (Success 3))
MonadReader r m => MonadReader r (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonadState s m => MonadState s (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonadWriter w m => MonadWriter w (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonadTrans (ValidationMonadT err)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression lift (Identity 1) :: ValidationMonadT String Identity IntValidationMonadT (Identity (Success 1))
BindTrans (ValidationMonadT err)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonad m => Monad (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadShort-circuiting on the first Failure.
Example1 expression ValidationMonadT (Identity (Success 2)) >>= (\x -> ValidationMonadT (Identity (Success (x + 1)))) :: ValidationMonadT String Identity IntValidationMonadT (Identity (Success 3))
Example1 expression (ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity Int) >>= (\x -> ValidationMonadT (Identity (Success (x + 1))))ValidationMonadT (Identity (Failure "err"))
Functor m => Functor (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression fmap (+1) (ValidationMonadT (Identity (Success 2)) :: ValidationMonadT String Identity Int)ValidationMonadT (Identity (Success 3))
Example1 expression fmap (+1) (ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity Int)ValidationMonadT (Identity (Failure "err"))
MonadFail m => MonadFail (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonad m => Applicative (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadShort-circuiting: unlike Validation, does not accumulate errors.
Example1 expression pure 1 :: ValidationMonadT String Identity IntValidationMonadT (Identity (Success 1))
Example1 expression (ValidationMonadT (Identity (Failure "e1")) :: ValidationMonadT String Identity (Int -> Int)) <*> (ValidationMonadT (Identity (Failure "e2")) :: ValidationMonadT String Identity Int)ValidationMonadT (Identity (Failure "e1"))
Foldable m => Foldable (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression foldr (:) [] (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)[1]
Example1 expression foldr (:) [] (ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity Int)[]
Traversable m => Traversable (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression traverse (\x -> [x, x+1]) (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)[ValidationMonadT (Identity (Success 1)),ValidationMonadT (Identity (Success 2))]
Example1 expression traverse (\x -> [x, x+1]) (ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity Int)[ValidationMonadT (Identity (Failure "err"))]
(Monad m, Monoid err) => Alternative (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonad(Monad m, Monoid err) => MonadPlus (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonadIO m => MonadIO (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonad(Eq1 m, Eq err) => Eq1 (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression liftEq (==) (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int) (ValidationMonadT (Identity (Success 1)))True
Example1 expression liftEq (==) (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int) (ValidationMonadT (Identity (Success 2)))False
(Ord1 m, Ord err) => Ord1 (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression liftCompare compare (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int) (ValidationMonadT (Identity (Success 2)))LT
(Show1 m, Show err) => Show1 (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadMonadCont m => MonadCont (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonad(Monad m, Semigroup err) => Alt (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadFirst Success wins; two Failures accumulate errors.
Example1 expression (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT [String] Identity Int) <!> ValidationMonadT (Identity (Success 2))ValidationMonadT (Identity (Success 1))
Example1 expression (ValidationMonadT (Identity (Failure ["e1"])) :: ValidationMonadT [String] Identity Int) <!> ValidationMonadT (Identity (Success 2))ValidationMonadT (Identity (Success 2))
Example1 expression (ValidationMonadT (Identity (Failure ["e1"])) :: ValidationMonadT [String] Identity Int) <!> ValidationMonadT (Identity (Failure ["e2"]))ValidationMonadT (Identity (Failure ["e1","e2"]))
Monad m => Apply (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadShort-circuiting: stops at the first Failure.
Example1 expression (ValidationMonadT (Identity (Success (+1))) :: ValidationMonadT String Identity (Int -> Int)) <.> ValidationMonadT (Identity (Success 2))ValidationMonadT (Identity (Success 3))
Example1 expression (ValidationMonadT (Identity (Failure "e1")) :: ValidationMonadT String Identity (Int -> Int)) <.> ValidationMonadT (Identity (Success 2))ValidationMonadT (Identity (Failure "e1"))
Monad m => Bind (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadFunctor m => Extend (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression extended (\_ -> 42) (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int) :: ValidationMonadT String Identity IntValidationMonadT (Identity (Success 42))
Example1 expression extended (\_ -> 42) (ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity Int) :: ValidationMonadT String Identity IntValidationMonadT (Identity (Failure "err"))
(Monad m, Monoid err) => Plus (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression zero :: ValidationMonadT [String] Identity IntValidationMonadT (Identity (Failure []))
Monad m => Selective (ValidationMonadT err m)Defined in validation-1.3.3 · Data.Validation.ValidationMonadAsValidation (ValidationMonad err a) err aDefined in validation-1.3.3 · Data.Validation.ValidationMonadExample2 expressions import Control.Lens((^?))(ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int) ^? _ValidationJust (Success 1)
GetValidation (ValidationMonad err a) err aDefined in validation-1.3.3 · Data.Validation.ValidationMonadExample2 expressions import Control.Lens(view)view getValidation (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)Success 1
HasValidation (ValidationMonad err a) err aDefined in validation-1.3.3 · Data.Validation.ValidationMonadExample2 expressions import Control.Lens(view)view validation (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)Success 1
Functor f => Sieve (ValidatorMonadProfunctorT err f) (ValidationMonadT err f)Defined in validation-1.3.3 · Data.Validation.ValidatorExample4 expressions import Data.Profunctor.Sieve(Sieve(sieve))let v = ValidatorMonadProfunctorT (\x -> ValidationMonadT (Identity (Success (x + 1)))) :: ValidatorMonadProfunctorT [String] Identity Int Intlet ValidationMonadT (Identity r) = sieve v 3rSuccess 4
Injection1 (ValidationMonad err a) (ValidationMonad err' a) err err'Defined in validation-1.3.3 · Data.Validation.ValidationMonadThe first constructor, Failure, of the Validation inside Identity.
Example2 expressions import Control.Lens((^?), (#))(ValidationMonadT (Identity (Failure "err")) :: ValidationMonad String Int) ^? _I1Just "err"
Example1 expression (ValidationMonadT (Identity (Success 1)) :: ValidationMonad String Int) ^? _I1Nothing
Example1 expression _I1 # "err" :: ValidationMonad String IntValidationMonadT (Identity (Failure "err"))
Injection2 (ValidationMonad err a) (ValidationMonad err a') a a'Defined in validation-1.3.3 · Data.Validation.ValidationMonadThe second constructor, Success, of the Validation inside Identity.
Example2 expressions import Control.Lens((^?), (#))(ValidationMonadT (Identity (Success 1)) :: ValidationMonad String Int) ^? _I2Just 1
Example1 expression (ValidationMonadT (Identity (Failure "err")) :: ValidationMonad String Int) ^? _I2Nothing
Example1 expression _I2 # 1 :: ValidationMonad String IntValidationMonadT (Identity (Success 1))
Eq (m (Validation err a)) => Eq (ValidationMonadT err m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression ValidationMonadT (Identity (Success 1)) == (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)True
Example1 expression ValidationMonadT (Identity (Success 1)) == (ValidationMonadT (Identity (Failure "err")) :: ValidationMonadT String Identity Int)False
Ord (m (Validation err a)) => Ord (ValidationMonadT err m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression compare (ValidationMonadT (Identity (Failure "a"))) (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)LT
Show (m (Validation err a)) => Show (ValidationMonadT err m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression show (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)"ValidationMonadT (Identity (Success 1))"
Generic (ValidationMonadT err m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonad(Applicative m, Semigroup e) => Semigroup (ValidationMonadT e m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression (ValidationMonadT (Identity (Failure ["e1"])) :: ValidationMonadT [String] Identity Int) <> ValidationMonadT (Identity (Failure ["e2"]))ValidationMonadT (Identity (Failure ["e1","e2"]))
Example1 expression (ValidationMonadT (Identity (Failure ["e1"])) :: ValidationMonadT [String] Identity Int) <> ValidationMonadT (Identity (Success 2))ValidationMonadT (Identity (Success 2))
(Applicative m, Monoid e) => Monoid (ValidationMonadT e m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression mempty :: ValidationMonadT [String] Identity IntValidationMonadT (Identity (Failure []))
NFData (m (Validation err a)) => NFData (ValidationMonadT err m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample1 expression rnf (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)()
Wrapped (ValidationMonadT err m a)Defined in validation-1.3.3 · Data.Validation.ValidationMonadExample2 expressions import Control.Lens(view, _Wrapped')view _Wrapped' (ValidationMonadT (Identity (Success 1)) :: ValidationMonadT String Identity Int)Identity (Success 1)
Applicative m => ReviewValidation (ValidationMonadT err m a) err aDefined in validation-1.3.3 · Data.Validation.ValidationMonadExample2 expressions import Control.Lens(review)review reviewValidation (Success 1 :: Validation String Int) :: ValidationMonadT String [] IntValidationMonadT [Success 1]
AsValidationMonadT (ValidationMonadT err m a) err m aDefined in validation-1.3.3 · Data.Validation.ValidationMonadGetValidationMonadT (ValidationMonadT err m a) err m aDefined in validation-1.3.3 · Data.Validation.ValidationMonadHasValidationMonadT (ValidationMonadT err m a) err m aDefined in validation-1.3.3 · Data.Validation.ValidationMonadReviewValidationMonadT (ValidationMonadT err m a) err m aDefined in validation-1.3.3 · Data.Validation.ValidationMonadRewrapped (ValidationMonadT err m a) (ValidationMonadT err' m' b)Defined in validation-1.3.3 · Data.Validation.ValidationMonadtype Rep (ValidationMonadT err m a) = D1 ('MetaDataDefined in validation-1.3.3 · Data.Validation.ValidationMonad"ValidationMonadT"
"Data.Validation.ValidationMonad"
"validation-1.3.3-1rmGLJZm63vLrWVTj4XPXA"
'True) (C1 ('MetaCons"ValidationMonadT"
'PrefixI 'False) (S1 ('MetaSel 'Nothing 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (Validation err a)))))type Unwrapped (ValidationMonadT err m a) = m (Validation err a)Defined in validation-1.3.3 · Data.Validation.ValidationMonad