ref: b4a7a0d4c04ad0fb96d0b279d35da2658d58a0e1
dir: /lib/Data/Functor.hs/
module Data.Functor( Functor(..), ($>), (<$>), (<&>), unzip, void, ) where import Prelude() -- do not import Prelude import Primitives -- for fixity import Data.Function class Functor f where fmap :: forall a b . (a -> b) -> f a -> f b (<$) :: forall a b . a -> f b -> f a (<$) = fmap . const infixl 4 <$> (<$>) :: forall f a b . Functor f => (a -> b) -> f a -> f b (<$>) = fmap infixl 1 <&> (<&>) :: Functor f => f a -> (a -> b) -> f b (<&>) = flip (<$>) infixl 4 $> ($>) :: Functor f => f a -> b -> f b ($>) = flip (<$) unzip :: Functor f => f (a, b) -> (f a, f b) unzip xs = ( (\(a,_)->a) <$> xs, (\(_,b)->b) <$> xs ) void :: forall f a . Functor f => f a -> f () void = fmap (const ())