| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Proarrow.Profunctor.Product
Documentation
data ((p :: j +-> k) :*: (q :: j +-> k)) (a :: k) (b :: j) where Source Github #
Constructors
| (:*:) | |
Instances
| (Strong m p, Strong m q) => Strong m (p :*: q :: d -> c -> Type) Source Github # | |
| (ThinProfunctor p, ThinProfunctor q) => ThinProfunctor (p :*: q :: k -> j -> Type) Source Github # | |
| (MonoidalProfunctor p, MonoidalProfunctor q) => MonoidalProfunctor (p :*: q :: k -> j -> Type) Source Github # | |
| (Profunctor p, Profunctor q) => Profunctor (p :*: q :: k -> j -> Type) Source Github # | |
Defined in Proarrow.Profunctor.Product Methods dimap :: forall (c :: k) (a :: k) (b :: j) (d :: j). (c ~> a) -> (b ~> d) -> (p :*: q) a b -> (p :*: q) c d Source Github # lmap :: forall (c :: k) (a :: k) (b :: j). (c ~> a) -> (p :*: q) a b -> (p :*: q) c b Source Github # rmap :: forall (b :: j) (d :: j) (a :: k). (b ~> d) -> (p :*: q) a b -> (p :*: q) a d Source Github # (\\) :: forall (a :: k) (b :: j) r. ((Ob a, Ob b) => r) -> (p :*: q) a b -> r Source Github # | |
| (HasBinaryCoproducts j, Corepresentable p, Corepresentable q) => Corepresentable (p :*: q :: k -> j -> Type) Source Github # | |
Defined in Proarrow.Object.BinaryCoproduct Methods coindex :: forall (a :: k) (b :: j). (p :*: q) a b -> ((p :*: q) %% a) ~> b Source Github # cotabulate :: forall (a :: k) (b :: j). Ob a => (((p :*: q) %% a) ~> b) -> (p :*: q) a b Source Github # corepMap :: forall (a :: k) (b :: k). (a ~> b) -> ((p :*: q) %% a) ~> ((p :*: q) %% b) Source Github # trivialCorep :: forall (a :: k). Ob a => (p :*: q) a ((p :*: q) %% a) Source Github # | |
| (HasBinaryProducts k, Representable p, Representable q) => Representable (p :*: q :: k -> j -> Type) Source Github # | |
Defined in Proarrow.Object.BinaryProduct Methods index :: forall (a :: k) (b :: j). (p :*: q) a b -> a ~> ((p :*: q) % b) Source Github # tabulate :: forall (b :: j) (a :: k). Ob b => (a ~> ((p :*: q) % b)) -> (p :*: q) a b Source Github # repMap :: forall (a :: j) (b :: j). (a ~> b) -> ((p :*: q) % a) ~> ((p :*: q) % b) Source Github # trivialRep :: forall (a :: j). Ob a => (p :*: q) ((p :*: q) % a) a Source Github # | |
| (DaggerProfunctor p, DaggerProfunctor q) => DaggerProfunctor (p :*: q :: k -> k -> Type) Source Github # | |
| (HasBinaryCoproducts k, Cotraversable p, Cotraversable q) => Cotraversable (p :*: q :: k -> k -> Type) Source Github # | |
Defined in Proarrow.Category.Monoidal.Distributive | |
| (Cartesian k, Traversable p, Traversable q) => Traversable (p :*: q :: k -> k -> Type) Source Github # | |
| Profunctor p => Functor ((:*:) p :: (j +-> k) -> k -> j -> Type) Source Github # | |
| Profunctor p => Promonad (Costar ((:*:) p) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Github # | |
| type (p :*: q :: k -> j -> Type) %% (a :: k) Source Github # | |
| type (p :*: q :: k -> j -> Type) % (a :: j) Source Github # | |
| type HasArrow (p :*: q :: k -> j -> Type) (a :: k) (b :: j) Source Github # | |