module Data.Bifunctor.Extra
  ( module Data.Bifunctor
  , mapValues
  )
where

import Data.Bifunctor (Bifunctor(..))
import Data.Map (Map)

mapValues :: (b -> c) -> Map a b -> Map a c
mapValues :: (b -> c) -> Map a b -> Map a c
mapValues b -> c
f = ((a, b) -> (a, c)) -> Map a b -> Map a c
forall a b. (a -> b) -> [a] -> [b]
map ((b -> c) -> (a, b) -> (a, c)
forall (p :: * -> * -> *) b c a.
Bifunctor p =>
(b -> c) -> p a b -> p a c
second b -> c
f)