naperian-0.1.0.0: Efficient representable functors

Safe HaskellNone
LanguageHaskell2010

Data.Functor1

Synopsis

Documentation

class Functor1 w where Source #

Objects in the category (Hask -> Hask) -> Hask

Minimal complete definition

map1

Methods

map1 :: (forall a. f a -> g a) -> w f -> w g Source #

map1 f . map1 g = map1 (f . g)
map1 id = id

mapCoerce1 :: (forall x. Coercion (f x) (g x)) -> w f -> w g Source #

mapCoerce1 c = map1 (coerceWith c)

Instances

Functor1 (Proxy (* -> *)) Source # 

Methods

map1 :: (forall a. f a -> g a) -> Proxy (* -> *) f -> Proxy (* -> *) g Source #

mapCoerce1 :: (forall x. Coercion * (f x) (g x)) -> Proxy (* -> *) f -> Proxy (* -> *) g Source #

Functor1 (Applied a) Source # 

Methods

map1 :: (forall b. f b -> g b) -> Applied a f -> Applied a g Source #

mapCoerce1 :: (forall x. Coercion * (f x) (g x)) -> Applied a f -> Applied a g Source #

Functor1 (Const (* -> *) a) Source #

since base-4.9

Methods

map1 :: (forall b. f b -> g b) -> Const (* -> *) a f -> Const (* -> *) a g Source #

mapCoerce1 :: (forall x. Coercion * (f x) (g x)) -> Const (* -> *) a f -> Const (* -> *) a g Source #