Safe Haskell | None |
---|---|
Language | Haskell2010 |
Proarrow.Profunctor.Rift
Documentation
data Rift (j1 :: OPPOSITE (PRO k i)) (p :: PRO j i) (a :: j) (b :: k) where Source Comments #
Constructors
Rift | |
Instances
(Profunctor p, Profunctor j2) => Profunctor (Rift ('OP j2) p :: j1 -> k -> Type) Source Comments # | |
Functor (Rift :: OPPOSITE (PRO k i) -> PRO j i -> j -> k -> Type) Source Comments # | |
Profunctor j => Adjunction (Star (Precompose j :: PRO i2 k -> i2 -> i1 -> Type) :: (i2 -> i1 -> Type) -> PRO i2 k -> Type) (Star (Rift ('OP j) :: PRO i2 i1 -> i2 -> k -> Type) :: (i2 -> k -> Type) -> PRO i2 i1 -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Rift Methods unit :: forall (a :: PRO i2 k). Ob a => (Star (Rift ('OP j) :: PRO i2 i1 -> i2 -> k -> Type) :.: Star (Precompose j :: PRO i2 k -> i2 -> i1 -> Type)) a a Source Comments # counit :: (Star (Precompose j :: PRO i2 k -> i2 -> i1 -> Type) :.: Star (Rift ('OP j) :: PRO i2 i1 -> i2 -> k -> Type)) :~> ((~>) :: CAT (i2 -> i1 -> Type)) Source Comments # | |
Profunctor j2 => Functor (Rift ('OP j2) :: PRO j1 i -> j1 -> k -> Type) Source Comments # | |
runRift :: forall {k} {i} {j1} j2 (b :: k) (x :: i) p (a :: j1). Profunctor j2 => j2 b x -> Rift ('OP j2) p a b -> p a x Source Comments #
newtype Precompose (j1 :: PRO j k) (p :: PRO i j) (a :: i) (b :: k) Source Comments #
Constructors
Precompose | |
Fields
|
Instances
(Profunctor j3, Profunctor p) => Profunctor (Precompose j3 p :: j2 -> k -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Rift Methods 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 j => Adjunction (Star (Precompose j :: PRO i2 k -> i2 -> i1 -> Type) :: (i2 -> i1 -> Type) -> PRO i2 k -> Type) (Star (Rift ('OP j) :: PRO i2 i1 -> i2 -> k -> Type) :: (i2 -> k -> Type) -> PRO i2 i1 -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Rift Methods unit :: forall (a :: PRO i2 k). Ob a => (Star (Rift ('OP j) :: PRO i2 i1 -> i2 -> k -> Type) :.: Star (Precompose j :: PRO i2 k -> i2 -> i1 -> Type)) a a Source Comments # counit :: (Star (Precompose j :: PRO i2 k -> i2 -> i1 -> Type) :.: Star (Rift ('OP j) :: PRO i2 i1 -> i2 -> k -> Type)) :~> ((~>) :: CAT (i2 -> i1 -> Type)) Source Comments # | |
Profunctor j2 => Functor (Precompose j2 :: PRO i j1 -> i -> k -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.Rift Methods map :: forall (a :: PRO i j1) (b :: PRO i j1). (a ~> b) -> Precompose j2 a ~> Precompose j2 b Source Comments # |
riftCompose :: forall {k} {j1} {i1} {j2} (i2 :: PRO k j1) (j3 :: PRO j1 i1) (p :: PRO j2 i1). (Profunctor i2, Profunctor j3, Profunctor p) => Rift ('OP i2) (Rift ('OP j3) p) ~> Rift ('OP (i2 :.: j3)) p Source Comments #
riftComposeInv :: forall {k1} {k2} {i1} {j1} (i2 :: PRO k1 k2) (j2 :: PRO k2 i1) (p :: PRO j1 i1). (Profunctor i2, Profunctor j2, Profunctor p) => Rift ('OP (i2 :.: j2)) p ~> Rift ('OP i2) (Rift ('OP j2) p) Source Comments #