semigroupoids-4.3: Semigroupoids: Category sans id

Safe HaskellSafe-Inferred
LanguageHaskell98

Data.Semigroupoid.Coproduct

Documentation

data L a

Instances

(Ob l a, Semigroupoid r) => Ob (Coproduct l r) (L a) 

data R a

Instances

(Semigroupoid l, Ob r a) => Ob (Coproduct l r) (R a) 

data Coproduct j k a b where

Constructors

L :: j a b -> Coproduct j k (L a) (L b) 
R :: k a b -> Coproduct j k (R a) (R b) 

Instances

(Semigroupoid j, Semigroupoid k) => Semigroupoid (Coproduct j k) 
(Groupoid j, Groupoid k) => Groupoid (Coproduct j k) 
(Semigroupoid l, Ob r a) => Ob (Coproduct l r) (R a) 
(Ob l a, Semigroupoid r) => Ob (Coproduct l r) (L a) 

factorDualCoproduct :: Coproduct (Dual j) (Dual k) a b -> Dual (Coproduct j k) a b