Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
Documentation
class Profunctor p => ProductProfunctor p where Source
ProductProfunctor (->) | |
Arrow arr => ProductProfunctor (WrappedArrow arr) | |
ProductContravariant f => ProductProfunctor (PPOfContravariant f) | |
Arrow arr => ProductProfunctor (AndArrow arr z) |
class Contravariant f => ProductContravariant f where Source
defaultEmpty :: Applicative (p ()) => p () () Source
defaultProfunctorProduct :: (Applicative (p (a, a')), Profunctor p) => p a b -> p a' b' -> p (a, a') (b, b') Source
defaultPoint :: Monoid (p ()) => p () Source
defaultContravariantProduct :: (Contravariant f, Monoid (f (a, b))) => f a -> f b -> f (a, b) Source
newtype PPOfContravariant f a b Source
PPOfContravariant (f a) |
unPPOfContravariant :: PPOfContravariant c a a -> c a Source
data AndArrow arr z a b Source
AndArrow | |
|
Arrow arr => Profunctor (AndArrow arr z) | |
Arrow arr => ProductProfunctor (AndArrow arr z) |
chain :: ProductProfunctor p => (t -> p a2 b2) -> (p a1 b1, t) -> p (a1, a2) (b1, b2) Source
pT3 :: ProductProfunctor p => T3 (p a1 b1) (p a2 b2) (p a3 b3) -> p (T3 a1 a2 a3) (T3 b1 b2 b3) Source
pT4 :: ProductProfunctor p => T4 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) -> p (T4 a1 a2 a3 a4) (T4 b1 b2 b3 b4) Source
pT5 :: ProductProfunctor p => T5 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) -> p (T5 a1 a2 a3 a4 a5) (T5 b1 b2 b3 b4 b5) Source
pT6 :: ProductProfunctor p => T6 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) -> p (T6 a1 a2 a3 a4 a5 a6) (T6 b1 b2 b3 b4 b5 b6) Source
pT7 :: ProductProfunctor p => T7 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) -> p (T7 a1 a2 a3 a4 a5 a6 a7) (T7 b1 b2 b3 b4 b5 b6 b7) Source
pT8 :: ProductProfunctor p => T8 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) -> p (T8 a1 a2 a3 a4 a5 a6 a7 a8) (T8 b1 b2 b3 b4 b5 b6 b7 b8) Source
pT9 :: ProductProfunctor p => T9 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) -> p (T9 a1 a2 a3 a4 a5 a6 a7 a8 a9) (T9 b1 b2 b3 b4 b5 b6 b7 b8 b9) Source
pT10 :: ProductProfunctor p => T10 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) -> p (T10 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10) (T10 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10) Source
pT11 :: ProductProfunctor p => T11 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) -> p (T11 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11) (T11 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11) Source
pT12 :: ProductProfunctor p => T12 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) -> p (T12 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12) (T12 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12) Source
pT13 :: ProductProfunctor p => T13 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) (p a13 b13) -> p (T13 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13) (T13 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13) Source
pT14 :: ProductProfunctor p => T14 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) (p a13 b13) (p a14 b14) -> p (T14 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14) (T14 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14) Source
pT15 :: ProductProfunctor p => T15 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) (p a13 b13) (p a14 b14) (p a15 b15) -> p (T15 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15) (T15 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15) Source
pT16 :: ProductProfunctor p => T16 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) (p a13 b13) (p a14 b14) (p a15 b15) (p a16 b16) -> p (T16 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16) (T16 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15 b16) Source
pT17 :: ProductProfunctor p => T17 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) (p a13 b13) (p a14 b14) (p a15 b15) (p a16 b16) (p a17 b17) -> p (T17 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16 a17) (T17 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15 b16 b17) Source
pT18 :: ProductProfunctor p => T18 (p a1 b1) (p a2 b2) (p a3 b3) (p a4 b4) (p a5 b5) (p a6 b6) (p a7 b7) (p a8 b8) (p a9 b9) (p a10 b10) (p a11 b11) (p a12 b12) (p a13 b13) (p a14 b14) (p a15 b15) (p a16 b16) (p a17 b17) (p a18 b18) -> p (T18 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16 a17 a18) (T18 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15 b16 b17 b18) Source
convert :: Profunctor p => (a2 -> a1) -> (tp -> tTp) -> (b1 -> b2) -> (tTp -> p a1 b1) -> tp -> p a2 b2 Source
p0 :: ProductProfunctor p => () -> p () () Source
p1 :: ProductProfunctor p => p a1 b1 -> p a1 b1 Source
p2 :: ProductProfunctor p => (p a1 b1, p a2 b2) -> p (a1, a2) (b1, b2) Source
p3 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3) -> p (a1, a2, a3) (b1, b2, b3) Source
p4 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4) -> p (a1, a2, a3, a4) (b1, b2, b3, b4) Source
p5 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5) -> p (a1, a2, a3, a4, a5) (b1, b2, b3, b4, b5) Source
p6 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6) -> p (a1, a2, a3, a4, a5, a6) (b1, b2, b3, b4, b5, b6) Source
p7 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7) -> p (a1, a2, a3, a4, a5, a6, a7) (b1, b2, b3, b4, b5, b6, b7) Source
p8 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8) -> p (a1, a2, a3, a4, a5, a6, a7, a8) (b1, b2, b3, b4, b5, b6, b7, b8) Source
p9 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9) (b1, b2, b3, b4, b5, b6, b7, b8, b9) Source
p10 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10) Source
p11 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11) Source
p12 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12) Source
p13 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12, p a13 b13) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) Source
p14 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12, p a13 b13, p a14 b14) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14) Source
p15 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12, p a13 b13, p a14 b14, p a15 b15) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15) Source
p16 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12, p a13 b13, p a14 b14, p a15 b15, p a16 b16) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16) Source
p17 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12, p a13 b13, p a14 b14, p a15 b15, p a16 b16, p a17 b17) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17) Source
p18 :: ProductProfunctor p => (p a1 b1, p a2 b2, p a3 b3, p a4 b4, p a5 b5, p a6 b6, p a7 b7, p a8 b8, p a9 b9, p a10 b10, p a11 b11, p a12 b12, p a13 b13, p a14 b14, p a15 b15, p a16 b16, p a17 b17, p a18 b18) -> p (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18) Source