summaryrefslogtreecommitdiff
path: root/libraries/base/Data/Functor.hs
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/base/Data/Functor.hs')
-rw-r--r--libraries/base/Data/Functor.hs26
1 files changed, 26 insertions, 0 deletions
diff --git a/libraries/base/Data/Functor.hs b/libraries/base/Data/Functor.hs
index 62bb70927e..2c0fbc3f29 100644
--- a/libraries/base/Data/Functor.hs
+++ b/libraries/base/Data/Functor.hs
@@ -20,6 +20,7 @@ module Data.Functor
(<$),
($>),
(<$>),
+ (<&>),
void,
) where
@@ -74,6 +75,31 @@ infixl 4 <$>
infixl 4 $>
+-- | Flipped version of '<$>'.
+--
+-- @
+-- ('<&>') = 'flip' 'fmap'
+-- @
+--
+-- @since 4.11.0.0
+--
+-- ==== __Examples__
+-- Apply @(+1)@ to a list, a 'Data.Maybe.Just' and a 'Data.Either.Right':
+--
+-- >>> Just 2 <&> (+1)
+-- Just 3
+--
+-- >>> [1,2,3] <&> (+1)
+-- [2,3,4]
+--
+-- >>> Right 3 <&> (+1)
+-- Right 4
+--
+(<&>) :: Functor f => f a -> (a -> b) -> f b
+as <&> f = f <$> as
+
+infixl 1 <&>
+
-- | Flipped version of '<$'.
--
-- @since 4.7.0.0