| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Proarrow.Category.Instance.Cat
Documentation
newtype KIND Source Comments #
Instances
data family Terminate :: k +-> () Source Comments #
Instances
| CategoryOf k => FunctorForRep (Terminate :: k +-> ()) Source Comments # | |
| type (Terminate :: k +-> ()) @ (a :: k) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
data family FstCat :: (j, k) +-> j Source Comments #
Instances
| (CategoryOf j, CategoryOf k) => FunctorForRep (FstCat :: (j, k) +-> j) Source Comments # | |
| type (FstCat :: (j, k) +-> j) @ ('(a, b) :: (j, k)) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
data family SndCat :: (j, k) +-> k Source Comments #
Instances
| (CategoryOf j, CategoryOf k) => FunctorForRep (SndCat :: (j, k) +-> k) Source Comments # | |
| type (SndCat :: (j, k) +-> k) @ ('(a, b) :: (j, k)) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
data ((p :: k +-> i) :&&&: (q :: k +-> j)) (a :: (i, j)) (b :: k) where Source Comments #
Constructors
| (:&&&:) :: forall {k} {i} {j} (p :: k +-> i) (a1 :: i) (b :: k) (q :: k +-> j) (b1 :: j). p a1 b -> q b1 b -> (p :&&&: q) '(a1, b1) b |
Instances
| (Profunctor p, Profunctor q) => Profunctor (p :&&&: q :: (i, j2) -> j1 -> Type) Source Comments # | |
| (Representable p, Representable q) => Representable (p :&&&: q :: (i, j2) -> j1 -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat Methods index :: forall (a :: (i, j2)) (b :: j1). (p :&&&: q) a b -> a ~> ((p :&&&: q) % b) Source Comments # tabulate :: forall (b :: j1) (a :: (i, j2)). Ob b => (a ~> ((p :&&&: q) % b)) -> (p :&&&: q) a b Source Comments # repMap :: forall (a :: j1) (b :: j1). (a ~> b) -> ((p :&&&: q) % a) ~> ((p :&&&: q) % b) Source Comments # | |
| type (p :&&&: q :: (i, j2) -> j1 -> Type) % (a :: j1) Source Comments # | |
data ((p :: i +-> k) :|||: (q :: j +-> k)) (a :: k) (b :: COPRODUCT i j) where Source Comments #
Constructors
| InjLP :: forall {i} {k} {j} (p :: i +-> k) (a :: k) (b1 :: i) (q :: j +-> k). p a b1 -> (p :|||: q) a ('L b1 :: COPRODUCT i j) | |
| InjRP :: forall {j} {k} {i} (q :: j +-> k) (a :: k) (b1 :: j) (p :: i +-> k). q a b1 -> (p :|||: q) a ('R b1 :: COPRODUCT i j) |
Instances
| (Profunctor p, Profunctor q) => Profunctor (p :|||: q :: k -> COPRODUCT i j -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
| (Representable p, Representable q) => Representable (p :|||: q :: k -> COPRODUCT i j -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat Methods index :: forall (a :: k) (b :: COPRODUCT i j). (p :|||: q) a b -> a ~> ((p :|||: q) % b) Source Comments # tabulate :: forall (b :: COPRODUCT i j) (a :: k). Ob b => (a ~> ((p :|||: q) % b)) -> (p :|||: q) a b Source Comments # repMap :: forall (a :: COPRODUCT i j) (b :: COPRODUCT i j). (a ~> b) -> ((p :|||: q) % a) ~> ((p :|||: q) % b) Source Comments # | |
| type (p :|||: q :: k -> COPRODUCT i j -> Type) % ('L a :: COPRODUCT i j) Source Comments # | |
| type (p :|||: q :: k -> COPRODUCT i j -> Type) % ('R a :: COPRODUCT i j) Source Comments # | |
data family Swap :: (j, k) +-> (k, j) Source Comments #
Instances
| (CategoryOf j, CategoryOf k) => FunctorForRep (Swap :: (j, k) +-> (k, j)) Source Comments # | |
| type (Swap :: (j, k) +-> (k, j)) @ ('(a, b) :: (j, k)) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
data Curry (p :: (i, j) +-> k) (a :: (OPPOSITE j, k)) (b :: i) where Source Comments #
Constructors
| Curry :: forall {i} {j} {k} (p :: (i, j) +-> k) (c :: k) (b :: i) (b1 :: j). p c '(b, b1) -> Curry p '('OP b1, c) b |
Instances
| (Profunctor p, CategoryOf i, CategoryOf j) => Profunctor (Curry p :: (OPPOSITE j, k) -> i -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
data Uncurry (p :: i +-> (OPPOSITE j, k)) (a :: k) (b :: (i, j)) where Source Comments #
Constructors
| Uncurry :: forall {i} {j} {k} (p :: i +-> (OPPOSITE j, k)) (b1 :: j) (a :: k) (a1 :: i). p '('OP b1, a) a1 -> Uncurry p a '(a1, b1) |
Instances
| (Profunctor p, CategoryOf j, CategoryOf k) => Profunctor (Uncurry p :: k -> (i, j) -> Type) Source Comments # | |
data family CombineDual :: (OPPOSITE j, OPPOSITE k) +-> OPPOSITE (j, k) Source Comments #
Instances
| (CategoryOf j, CategoryOf k) => FunctorForRep (CombineDual :: (OPPOSITE j, OPPOSITE k) +-> OPPOSITE (j, k)) Source Comments # | |
| type (CombineDual :: (OPPOSITE j, OPPOSITE k) +-> OPPOSITE (j, k)) @ ('('OP a, 'OP b) :: (OPPOSITE j, OPPOSITE k)) Source Comments # | |
data family DistribDual :: OPPOSITE (j, k) +-> (OPPOSITE j, OPPOSITE k) Source Comments #
Instances
| (CategoryOf j, CategoryOf k) => FunctorForRep (DistribDual :: OPPOSITE (j, k) +-> (OPPOSITE j, OPPOSITE k)) Source Comments # | |
| type (DistribDual :: OPPOSITE (j, k) +-> (OPPOSITE j, OPPOSITE k)) @ ('OP '(a, b) :: OPPOSITE (j, k)) Source Comments # | |