Copyright | (c) Nils Schweinsberg 2011 (c) George Giorgidze 2011 (c) University Tuebingen 2011 |
---|---|
License | BSD-style (see the file libraries/base/LICENSE) |
Maintainer | [email protected] |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Monadic zipping (used for monad comprehensions)
class Monad m => MonadZip m where Source
MonadZip
type class. Minimal definition: mzip
or mzipWith
Instances should satisfy the laws:
liftM (f *** g) (mzip ma mb) = mzip (liftM f ma) (liftM g mb)
liftM (const ()) ma = liftM (const ()) mb ==> munzip (mzip ma mb) = (ma, mb)
MonadZip [] | Since: base-4.3.1.0 |
MonadZip Maybe | Since: base-4.8.0.0 |
MonadZip Par1 | Since: base-4.9.0.0 |
MonadZip NonEmpty | Since: base-4.9.0.0 |
MonadZip Down | Since: base-4.12.0.0 |
MonadZip Product | Since: base-4.8.0.0 |
MonadZip Sum | Since: base-4.8.0.0 |
MonadZip Dual | Since: base-4.8.0.0 |
MonadZip Last | Since: base-4.8.0.0 |
MonadZip First | Since: base-4.8.0.0 |
MonadZip Identity | Since: base-4.8.0.0 |
MonadZip (U1 :: Type -> Type) | Since: base-4.9.0.0 |
MonadZip (Proxy :: Type -> Type) | Since: base-4.9.0.0 |
MonadZip f => MonadZip (Rec1 f) | Since: base-4.9.0.0 |
MonadZip f => MonadZip (Alt f) | Since: base-4.8.0.0 |
(MonadZip f, MonadZip g) => MonadZip (f :*: g) | Since: base-4.9.0.0 |
(MonadZip f, MonadZip g) => MonadZip (Product f g) | Since: base-4.9.0.0 |
MonadZip f => MonadZip (M1 i c f) | Since: base-4.9.0.0 |
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.6.1/docs/html/libraries/base-4.12.0.0/Control-Monad-Zip.html