| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Proarrow.Profunctor.Costar
Documentation
data Costar' (f :: OPPOSITE (j .-> k)) (a :: j) (b :: k) where Source Comments #
Constructors
| Costar' :: forall {j} {k} (a :: j) (f1 :: j -> k) (b :: k). Ob a => (f1 a ~> b) -> Costar' ('OP ('NT f1)) a b |
Instances
| (Functor f, Discrete j, Thin k) => ThinProfunctor (Costar f :: k -> j -> Type) Source Comments # | |
| (Cartesian j, Cartesian k, Functor f) => MonoidalProfunctor (Costar f :: j -> k -> Type) Source Comments # | Every functor between cartesian categories is a colax monoidal functor. |
| Functor f => Profunctor (Costar f :: k -> j -> Type) Source Comments # | |
| Functor f => Corepresentable (Costar f :: k -> j -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Costar Methods coindex :: forall (a :: k) (b :: j). Costar f a b -> (Costar f %% a) ~> b Source Comments # cotabulate :: forall (a :: k) (b :: j). Ob a => ((Costar f %% a) ~> b) -> Costar f a b Source Comments # corepMap :: forall (a :: k) (b :: k). (a ~> b) -> (Costar f %% a) ~> (Costar f %% b) Source Comments # | |
| Representable (Costar ((,) a) :: Type -> Type -> Type) Source Comments # | The right adjoint of |
| Functor f => Proadjunction (Star f :: k -> j -> Type) (Costar f :: j -> k -> Type) Source Comments # | |
| (Functor t, Traversable (Star t)) => Cotraversable (Costar t :: k -> k -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Costar Methods cotraverse :: forall (p :: k +-> k). (DistributiveProfunctor p, Strong k p, SelfAction k) => (p :.: Costar t) :~> (Costar t :.: p) Source Comments # | |
| Monad m => Procomonad (Costar (Prelude m) :: Type -> Type -> Type) Source Comments # | |
| Functor (Costar' :: OPPOSITE (j .-> k) -> j -> k -> Type) Source Comments # | |
| Promonad (Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Coyoneda Methods id :: forall (a :: j +-> k). Ob a => Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) a a Source Comments # (.) :: forall (b :: j +-> k) (c :: j +-> k) (a :: j +-> k). Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) b c -> Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) a b -> Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) a c Source Comments # | |
| Profunctor p => Promonad (Costar ((:*:) p) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Comments # | |
| Promonad (Costar (Yoneda :: (j +-> k) -> k -> j -> Type) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Yoneda Methods id :: forall (a :: j +-> k). Ob a => Costar (Yoneda :: (j +-> k) -> k -> j -> Type) a a Source Comments # (.) :: forall (b :: j +-> k) (c :: j +-> k) (a :: j +-> k). Costar (Yoneda :: (j +-> k) -> k -> j -> Type) b c -> Costar (Yoneda :: (j +-> k) -> k -> j -> Type) a b -> Costar (Yoneda :: (j +-> k) -> k -> j -> Type) a c Source Comments # | |
| type (Costar f :: k -> j -> Type) %% (a :: k) Source Comments # | |
Defined in Proarrow.Profunctor.Costar | |
| type (Costar ((,) a) :: Type -> Type -> Type) % (b :: Type) Source Comments # | |
| type HasArrow (Costar f :: k -> j -> Type) (a :: k) (b :: j) Source Comments # | |
Defined in Proarrow.Profunctor.Costar | |
pattern Costar :: forall {j} {k} a (f :: j -> k) b. () => Ob a => (f a ~> b) -> Costar f a b Source Comments #