Hoogle Search
Within LTS Haskell 24.6 (ghc-9.10.2)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
(
<$ ) :: Functor f => a -> f b -> f abase Data.Functor Replace all locations in the input with the same value. The default definition is fmap . const, but this may be overridden with a more efficient version.
Examples
Perform a computation with Maybe and replace the result with a constant value if it is Just:>>> 'a' <$ Just 2 Just 'a' >>> 'a' <$ Nothing Nothing
(
<$> ) :: Functor f => (a -> b) -> f a -> f bbase Data.Functor An infix synonym for fmap. The name of this operator is an allusion to $. Note the similarities between their types:
($) :: (a -> b) -> a -> b (<$>) :: Functor f => (a -> b) -> f a -> f b
Whereas $ is function application, <$> is function application lifted over a Functor.Examples
Convert from a Maybe Int to a Maybe String using show:>>> show <$> Nothing Nothing
>>> show <$> Just 3 Just "3"
Convert from an Either Int Int to an Either Int String using show:>>> show <$> Left 17 Left 17
>>> show <$> Right 17 Right "17"
Double each element of a list:>>> (*2) <$> [1,2,3] [2,4,6]
Apply even to the second element of a pair:>>> even <$> (2,2) (2,True)
(
>$ ) :: Contravariant f => b -> f b -> f abase Data.Functor.Contravariant Replace all locations in the output with the same value. The default definition is contramap . const, but this may be overridden with a more efficient version.
(
>$$< ) :: Contravariant f => f b -> (a -> b) -> f abase Data.Functor.Contravariant This is an infix version of contramap with the arguments flipped.
(
>$< ) :: Contravariant f => (a -> b) -> f b -> f abase Data.Functor.Contravariant This is an infix alias for contramap.
(
<$ ) :: Functor f => a -> f b -> f abase GHC.Base Replace all locations in the input with the same value. The default definition is fmap . const, but this may be overridden with a more efficient version.
Examples
Perform a computation with Maybe and replace the result with a constant value if it is Just:>>> 'a' <$ Just 2 Just 'a' >>> 'a' <$ Nothing Nothing
(
:$$: ) :: ErrorMessage -> ErrorMessage -> ErrorMessagebase GHC.TypeError Stack two pieces of error message on top of each other.
(
:$$: ) :: ErrorMessage -> ErrorMessage -> ErrorMessagebase GHC.TypeLits Stack two pieces of error message on top of each other.
(
>$< ) :: Contravariant f => (b -> a) -> f a -> f bbytestring Data.ByteString.Builder.Prim A fmap-like operator for builder primitives, both bounded and fixed size. Builder primitives are contravariant so it's like the normal fmap, but backwards (look at the type). (If it helps to remember, the operator symbol is like ($) but backwards.) We can use it for example to prepend and/or append fixed values to an primitive.
import Data.ByteString.Builder.Prim as P showEncoding ((\x -> ('\'', (x, '\''))) >$< fixed3) 'x' = "'x'" where fixed3 = P.char7 >*< P.char7 >*< P.char7
Note that the rather verbose syntax for composition stems from the requirement to be able to compute the size / size bound at compile time.(
>$< ) :: Contravariant f => (b -> a) -> f a -> f bbytestring Data.ByteString.Builder.Prim.Internal A fmap-like operator for builder primitives, both bounded and fixed size. Builder primitives are contravariant so it's like the normal fmap, but backwards (look at the type). (If it helps to remember, the operator symbol is like ($) but backwards.) We can use it for example to prepend and/or append fixed values to an primitive.
import Data.ByteString.Builder.Prim as P showEncoding ((\x -> ('\'', (x, '\''))) >$< fixed3) 'x' = "'x'" where fixed3 = P.char7 >*< P.char7 >*< P.char7
Note that the rather verbose syntax for composition stems from the requirement to be able to compute the size / size bound at compile time.