Safe Haskell | None |
---|---|
Language | Haskell98 |
Hedgehog.Internal.Distributive
Documentation
class MonadTransDistributive g where Source #
Associated Types
type Transformer (f :: (* -> *) -> * -> *) (g :: (* -> *) -> * -> *) (m :: * -> *) :: Constraint Source #
type Transformer f g m = (Monad m, Monad (f m), Monad (g m), Monad (f (g m)), MonadTrans f, MFunctor f) Source #
Methods
distributeT :: Transformer f g m => g (f m) a -> f (g m) a Source #
Distribute one monad transformer over another.
Instances
MonadTransDistributive MaybeT Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f MaybeT m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f MaybeT m => MaybeT (f m) a -> f (MaybeT m) a Source # | |
MonadTransDistributive TreeT Source # | |
Defined in Hedgehog.Internal.Tree Associated Types type Transformer f TreeT m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f TreeT m => TreeT (f m) a -> f (TreeT m) a Source # | |
MonadTransDistributive GenT Source # | |
Defined in Hedgehog.Internal.Gen Associated Types type Transformer f GenT m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f GenT m => GenT (f m) a -> f (GenT m) a Source # | |
MonadTransDistributive TestT Source # | |
Defined in Hedgehog.Internal.Property Associated Types type Transformer f TestT m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f TestT m => TestT (f m) a -> f (TestT m) a Source # | |
MonadTransDistributive PropertyT Source # | |
Defined in Hedgehog.Internal.Property Associated Types type Transformer f PropertyT m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f PropertyT m => PropertyT (f m) a -> f (PropertyT m) a Source # | |
MonadTransDistributive (ExceptT x) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (ExceptT x) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (ExceptT x) m => ExceptT x (f m) a -> f (ExceptT x m) a Source # | |
Monoid w => MonadTransDistributive (WriterT w) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (WriterT w) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (WriterT w) m => WriterT w (f m) a -> f (WriterT w m) a Source # | |
MonadTransDistributive (StateT s) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (StateT s) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (StateT s) m => StateT s (f m) a -> f (StateT s m) a Source # | |
MonadTransDistributive (ReaderT r) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (ReaderT r) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (ReaderT r) m => ReaderT r (f m) a -> f (ReaderT r m) a Source # | |
MonadTransDistributive (IdentityT :: (Type -> Type) -> Type -> Type) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f IdentityT m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f IdentityT m => IdentityT (f m) a -> f (IdentityT m) a Source # | |
MonadTransDistributive (StateT s) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (StateT s) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (StateT s) m => StateT s (f m) a -> f (StateT s m) a Source # | |
Monoid w => MonadTransDistributive (WriterT w) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (WriterT w) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (WriterT w) m => WriterT w (f m) a -> f (WriterT w m) a Source # | |
Monoid w => MonadTransDistributive (RWST r w s) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (RWST r w s) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (RWST r w s) m => RWST r w s (f m) a -> f (RWST r w s m) a Source # | |
Monoid w => MonadTransDistributive (RWST r w s) Source # | |
Defined in Hedgehog.Internal.Distributive Associated Types type Transformer f (RWST r w s) m Source # Methods distributeT :: forall f (m :: Type -> Type) a. Transformer f (RWST r w s) m => RWST r w s (f m) a -> f (RWST r w s m) a Source # |