packages feed

prologue-3.0.9: src/Prologue/Data/Bifunctor.hs

module Prologue.Data.Bifunctor (module Prologue.Data.Bifunctor, module X) where

import qualified Data.Bifunctor    as B
import           Data.Bifunctor    as X (Bifunctor, bimap)
import           Data.Bifunctor.TH as X (deriveBifunctor, deriveBifoldable, deriveBitraversable)

mapFirst  :: Bifunctor p => (a -> b) -> p a c -> p b c
mapSecond :: Bifunctor p => (b -> c) -> p a b -> p a c
mapFirst  = B.first  ; {-# INLINE mapFirst  #-}
mapSecond = B.second ; {-# INLINE mapSecond #-}