| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Proarrow.Profunctor.Costar
Documentation
data Costar' (f :: OPPOSITE (j .-> k)) (a :: j) (b :: k) where Source Github #
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, Thin j) => ThinProfunctor (Costar f :: k -> j -> Type) Source Github # | |
| (Cartesian j, Cartesian k, Functor f) => MonoidalProfunctor (Costar f :: j -> k -> Type) Source Github # | Every functor between cartesian categories is a colax monoidal functor. |
| Functor f => Profunctor (Costar f :: k -> j -> Type) Source Github # | |
Defined in Proarrow.Profunctor.Costar Methods dimap :: forall (c :: k) (a :: k) (b :: j) (d :: j). (c ~> a) -> (b ~> d) -> Costar f a b -> Costar f c d Source Github # lmap :: forall (c :: k) (a :: k) (b :: j). (c ~> a) -> Costar f a b -> Costar f c b Source Github # rmap :: forall (b :: j) (d :: j) (a :: k). (b ~> d) -> Costar f a b -> Costar f a d Source Github # (\\) :: forall (a :: k) (b :: j) r. ((Ob a, Ob b) => r) -> Costar f a b -> r Source Github # | |
| Functor f => Corepresentable (Costar f :: k -> j -> Type) Source Github # | |
Defined in Proarrow.Profunctor.Costar Methods coindex :: forall (a :: k) (b :: j). Costar f a b -> (Costar f %% a) ~> b Source Github # cotabulate :: forall (a :: k) (b :: j). Ob a => ((Costar f %% a) ~> b) -> Costar f a b Source Github # corepMap :: forall (a :: k) (b :: k). (a ~> b) -> (Costar f %% a) ~> (Costar f %% b) Source Github # trivialCorep :: forall (a :: k). Ob a => Costar f a (Costar f %% a) Source Github # | |
| Representable (Costar ((,) a) :: Type -> Type -> Type) Source Github # | The right adjoint of |
Defined in Proarrow.Adjunction Methods index :: Costar ((,) a) a0 b -> a0 ~> (Costar ((,) a) % b) Source Github # tabulate :: Ob b => (a0 ~> (Costar ((,) a) % b)) -> Costar ((,) a) a0 b Source Github # repMap :: (a0 ~> b) -> (Costar ((,) a) % a0) ~> (Costar ((,) a) % b) Source Github # trivialRep :: Ob a0 => Costar ((,) a) (Costar ((,) a) % a0) a0 Source Github # | |
| Functor f => Proadjunction (Star f :: k -> j -> Type) (Costar f :: j -> k -> Type) Source Github # | |
| (Functor t, Traversable (Star t)) => Cotraversable (Costar t :: k -> k -> Type) Source Github # | |
Defined in Proarrow.Profunctor.Costar | |
| Promonad (Costar ((,) Int)) Source Github # | |
| Monad m => Procomonad (Costar (Prelude m) :: Type -> Type -> Type) Source Github # | |
| Functor (Costar' :: OPPOSITE (j .-> k) -> j -> k -> Type) Source Github # | |
| Promonad (Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Github # | |
Defined in Proarrow.Profunctor.Coyoneda Methods id :: forall (a :: j +-> k). Ob a => Costar (Coyoneda :: (j +-> k) -> k -> j -> Type) a a Source Github # (.) :: 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 Github # | |
| (MonoidalAction m j, MonoidalAction m k) => Promonad (Costar (Tambara m :: (j +-> k) -> k -> j -> Type) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Github # | |
Defined in Proarrow.Profunctor.PastroTambara Methods id :: forall (a :: j +-> k). Ob a => Costar (Tambara m :: (j +-> k) -> k -> j -> Type) a a Source Github # (.) :: forall (b :: j +-> k) (c :: j +-> k) (a :: j +-> k). Costar (Tambara m :: (j +-> k) -> k -> j -> Type) b c -> Costar (Tambara m :: (j +-> k) -> k -> j -> Type) a b -> Costar (Tambara m :: (j +-> k) -> k -> j -> Type) a c Source Github # | |
| Profunctor p => Promonad (Costar ((:*:) p) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Github # | |
| Promonad (Costar (Yoneda :: (j +-> k) -> k -> j -> Type) :: (j +-> k) -> (k -> j -> Type) -> Type) Source Github # | |
Defined in Proarrow.Profunctor.Yoneda Methods id :: forall (a :: j +-> k). Ob a => Costar (Yoneda :: (j +-> k) -> k -> j -> Type) a a Source Github # (.) :: 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 Github # | |
| type (Costar f :: k -> j -> Type) %% (a :: k) Source Github # | |
Defined in Proarrow.Profunctor.Costar | |
| type (Costar ((,) a) :: Type -> Type -> Type) % (b :: Type) Source Github # | |
| type HasArrow (Costar f :: k -> j -> Type) (a :: k) (b :: j) Source Github # | |
pattern Costar :: forall {j} {k} a (f :: j -> k) b. () => Ob a => (f a ~> b) -> Costar f a b Source Github #