vinyl-0.4.3: Extensible Records

Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Vinyl.Functor

Documentation

class Presheaf f where Source

Methods

contramap :: (a -> b) -> f b -> f a Source

Instances

(Functor f, Presheaf g) => Presheaf (Lift (->) f g) 
(Presheaf f, Presheaf g) => Presheaf (Lift Either f g) 
(Presheaf f, Presheaf g) => Presheaf (Lift (,) f g) 

newtype Lift op f g x Source

Constructors

Lift 

Fields

runLift :: op (f x) (g x)
 

Instances

(Presheaf f, Functor g) => Functor (Lift (->) f g) 
(Functor f, Functor g) => Functor (Lift Either f g) 
(Functor f, Functor g) => Functor (Lift (,) f g) 
(Applicative f, Applicative g) => Applicative (Lift (,) f g) 
(Functor f, Presheaf g) => Presheaf (Lift (->) f g) 
(Presheaf f, Presheaf g) => Presheaf (Lift Either f g) 
(Presheaf f, Presheaf g) => Presheaf (Lift (,) f g)