Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
data Ran (j1 :: OPPOSITE (i +-> j)) (p :: i +-> k) (a :: k) (b :: j) where Source Comments #
Instances
(Profunctor p, Profunctor j2) => Profunctor (Ran ('OP j2) p :: j1 -> k -> Type) Source Comments # | |
(p ~ j, Profunctor p) => Promonad (Ran ('OP p) p :: k -> k -> Type) Source Comments # | |
Functor (Ran :: OPPOSITE (i +-> j) -> (i +-> k) -> k -> j -> Type) Source Comments # | |
Profunctor j2 => Adjunction (Star (Precompose j2 :: (j1 +-> k) -> k -> i -> Type) :: (k -> i -> Type) -> (j1 +-> k) -> Type) (Star (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type) :: (k -> j1 -> Type) -> (i +-> k) -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Ran unit :: forall (a :: j1 +-> k). Ob a => (Star (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type) :.: Star (Precompose j2 :: (j1 +-> k) -> k -> i -> Type)) a a Source Comments # counit :: (Star (Precompose j2 :: (j1 +-> k) -> k -> i -> Type) :.: Star (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type)) :~> ((~>) :: CAT (k -> i -> Type)) Source Comments # | |
Profunctor j2 => Functor (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type) Source Comments # | |
runRan :: forall {j1} {i} {k} j2 (b :: j1) (x :: i) p (a :: k). Profunctor j2 => j2 b x -> Ran ('OP j2) p a b -> p a x Source Comments #
flipRan :: forall {i} {k2} {k} (j :: i -> k2) (p :: PRO k k2). (Functor j, Profunctor p) => (Costar j |> p) ~> (p :.: Star j) Source Comments #
flipRanInv :: forall {j1} {i} {k} (j2 :: j1 -> i) (p :: PRO k i). (Functor j2, Profunctor p) => (p :.: Star j2) ~> (Costar j2 |> p) Source Comments #
newtype Precompose (j1 :: i +-> j) (p :: j +-> k) (a :: k) (b :: i) Source Comments #
Precompose | |
|
Instances
(Profunctor j3, Profunctor p) => Profunctor (Precompose j3 p :: j2 -> k -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Ran dimap :: forall (c :: j2) (a :: j2) (b :: k) (d :: k). (c ~> a) -> (b ~> d) -> Precompose j3 p a b -> Precompose j3 p c d Source Comments # (\\) :: forall (a :: j2) (b :: k) r. ((Ob a, Ob b) => r) -> Precompose j3 p a b -> r Source Comments # | |
Profunctor j2 => Adjunction (Star (Precompose j2 :: (j1 +-> k) -> k -> i -> Type) :: (k -> i -> Type) -> (j1 +-> k) -> Type) (Star (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type) :: (k -> j1 -> Type) -> (i +-> k) -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Ran unit :: forall (a :: j1 +-> k). Ob a => (Star (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type) :.: Star (Precompose j2 :: (j1 +-> k) -> k -> i -> Type)) a a Source Comments # counit :: (Star (Precompose j2 :: (j1 +-> k) -> k -> i -> Type) :.: Star (Ran ('OP j2) :: (i +-> k) -> k -> j1 -> Type)) :~> ((~>) :: CAT (k -> i -> Type)) Source Comments # | |
Profunctor j2 => Functor (Precompose j2 :: (j1 +-> k) -> k -> i -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Ran map :: forall (a :: j1 +-> k) (b :: j1 +-> k). (a ~> b) -> Precompose j2 a ~> Precompose j2 b Source Comments # |
ranCompose :: forall {j1} {j2} {i1} {k} (i2 :: PRO j1 j2) (j3 :: PRO j2 i1) (p :: PRO k i1). (Profunctor i2, Profunctor j3, Profunctor p) => (i2 |> (j3 |> p)) ~> ((i2 :.: j3) |> p) Source Comments #
ranComposeInv :: forall {j1} {j2} {i1} {k} (i2 :: PRO j1 j2) (j3 :: PRO j2 i1) (p :: PRO k i1). (Profunctor i2, Profunctor j3, Profunctor p) => ((i2 :.: j3) |> p) ~> (i2 |> (j3 |> p)) Source Comments #