proarrow-0: Category theory with a central role for profunctors
Safe HaskellNone
LanguageHaskell2010

Proarrow.Profunctor.Forget

Documentation

data Forget (ob :: OB k) (a :: k) (b :: SUBCAT ob) where Source Comments #

Constructors

Forget :: forall {k} (ob :: OB k) (b1 :: k) (a :: k). ob b1 => (a ~> b1) -> Forget ob a ('SUB b1 :: SUBCAT ob) 

Instances

Instances details
Adjunction List (Forget Monoid) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

CategoryOf k => Profunctor (Forget ob :: k -> SUBCAT ob -> Type) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

Methods

dimap :: forall (c :: k) (a :: k) (b :: SUBCAT ob) (d :: SUBCAT ob). (c ~> a) -> (b ~> d) -> Forget ob a b -> Forget ob c d Source Comments #

(\\) :: forall (a :: k) (b :: SUBCAT ob) r. ((Ob a, Ob b) => r) -> Forget ob a b -> r Source Comments #

CategoryOf k => Representable (Forget ob :: k -> SUBCAT ob -> Type) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

Methods

index :: forall (a :: k) (b :: SUBCAT ob). Forget ob a b -> a ~> (Forget ob % b) Source Comments #

tabulate :: forall (b :: SUBCAT ob) (a :: k). Ob b => (a ~> (Forget ob % b)) -> Forget ob a b Source Comments #

repMap :: forall (a :: SUBCAT ob) (b :: SUBCAT ob). (a ~> b) -> (Forget ob % a) ~> (Forget ob % b) Source Comments #

type (Forget ob :: k -> SUBCAT ob -> Type) % ('SUB a :: SUBCAT ob) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

type (Forget ob :: k -> SUBCAT ob -> Type) % ('SUB a :: SUBCAT ob) = a

data List (a :: SUBCAT Monoid) b where Source Comments #

Constructors

List :: forall a1 b. Monoid a1 => (a1 -> [b]) -> List ('SUB a1 :: SUBCAT Monoid) b 

Instances

Instances details
Adjunction List (Forget Monoid) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

Profunctor List Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

Methods

dimap :: forall (c :: SUBCAT Monoid) (a :: SUBCAT Monoid) b d. (c ~> a) -> (b ~> d) -> List a b -> List c d Source Comments #

(\\) :: forall (a :: SUBCAT Monoid) b r. ((Ob a, Ob b) => r) -> List a b -> r Source Comments #

Representable List Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

Associated Types

type List % (a :: Type) 
Instance details

Defined in Proarrow.Profunctor.Forget

type List % (a :: Type) = 'SUB [a] :: SUBCAT Monoid

Methods

index :: forall (a :: SUBCAT Monoid) b. List a b -> a ~> (List % b) Source Comments #

tabulate :: forall b (a :: SUBCAT Monoid). Ob b => (a ~> (List % b)) -> List a b Source Comments #

repMap :: (a ~> b) -> (List % a) ~> (List % b) Source Comments #

type List % (a :: Type) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Forget

type List % (a :: Type) = 'SUB [a] :: SUBCAT Monoid