Hoogle Search

Within LTS Haskell 24.46 (ghc-9.10.3)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. liftMap :: MonadTransFunctor t => (m a -> n b) -> t m a -> t n b

    monad-control-identity Control.Monad.Trans.Control.Functor

    No documentation available.

  2. lensMapParam :: forall (m :: Type -> Type) a b . Monad m => Lens' a b -> Param m a -> Param m b

    monadology Control.Monad.Ology.Data.Param

    No documentation available.

  3. lensMapProd :: forall (m :: Type -> Type) a b . (Monad m, Monoid a, Monoid b) => Lens' a b -> Prod m a -> Prod m b

    monadology Control.Monad.Ology.Data.Prod

    No documentation available.

  4. lensMapRef :: forall (m :: Type -> Type) a b . Monad m => Lens' a b -> Ref m a -> Ref m b

    monadology Control.Monad.Ology.Data.Ref

    No documentation available.

  5. execMapWithT :: Monad m => m (WithT m a) -> WithT m a

    monadology Control.Monad.Ology.Specific.WithT

    No documentation available.

  6. gbimap :: GBifunctor cat1 cat2 cat3 t => cat1 a b -> cat2 c d -> cat3 (t a c) (t b d)

    monoidal-functors Control.Category.Tensor

    Covariantly map over both variables.

    gbimap f g ≡ glmap f . grmap g
    

    Examples

    >>> gbimap @(->) @(->) @(->) @(,) show not (123, False)
    ("123",True)
    
    >>> gbimap @(->) @(->) @(->) @Either show not (Right False)
    Right True
    
    >>> getOp (gbimap @Op @Op @Op @Either (Op (+ 1)) (Op show)) (Right True)
    Right "True"
    

  7. glmap :: forall cat1 (cat2 :: Type -> Type -> Type) cat3 t a b c . GBifunctor cat1 cat2 cat3 t => cat1 a b -> cat3 (t a c) (t b c)

    monoidal-functors Control.Category.Tensor

    Covariantally map over the left variable.

  8. grmap :: forall (cat1 :: Type -> Type -> Type) cat2 cat3 t c d a . GBifunctor cat1 cat2 cat3 t => cat2 c d -> cat3 (t a c) (t a d)

    monoidal-functors Control.Category.Tensor

    Covariantally map over the right variable.

  9. biinvmap :: BiInvariant p => (a' -> a) -> (a -> a') -> (b' -> b) -> (b -> b') -> p a b -> p a' b'

    monoidal-functors Data.Bifunctor.BiInvariant

    Used to apply a pair of isomorphic functions to p a b. Biinvmap picks out the appropriate half of the iso depending if p is covariant or contravariant on each parameter.

    Examples

    >>> :t biinvmap @(,) (read @Int) show (read @Bool) show
    biinvmap @(,) (read @Int) show (read @Bool) show :: (Int, Bool) -> (String, String)
    
    >>> biinvmap @(,) (read @Int) show (read @Bool) show (10, True)
    ("10","True")
    
    >>> :t biinvmap @(->) (read @Int) show (read @Bool) show
    biinvmap @(->) (read @Int) show (read @Bool) show :: (Int -> Bool) -> String -> String
    
    >>> biinvmap @(->) (read @Int) show (read @Bool) show (\i -> i > 10) "12"
    "True"
    

  10. contramapMaybe :: (Profunctor p, Semigroupal (->) Either Either Either p) => (a -> Maybe b) -> p b x -> p a x

    monoidal-functors Data.Bifunctor.Monoidal.Specialized

    No documentation available.

Page 1192 of many | Previous | Next