module Opaleye.Internal.Helpers where

infixr 8 .:

(.:) :: (r -> z) -> (a -> b -> r) -> a -> b -> z
.: :: (r -> z) -> (a -> b -> r) -> a -> b -> z
(.:) r -> z
f a -> b -> r
g a
x b
y = r -> z
f (a -> b -> r
g a
x b
y)

infixr 8 .:.

(.:.) :: (r -> z) -> (a -> b -> c -> r) -> a -> b -> c -> z
.:. :: (r -> z) -> (a -> b -> c -> r) -> a -> b -> c -> z
(.:.) r -> z
f a -> b -> c -> r
g a
a b
b c
c = r -> z
f (a -> b -> c -> r
g a
a b
b c
c)

infixr 8 .::

(.::) :: (r -> z) -> (a -> b -> c -> d -> r) -> a -> b -> c -> d -> z
.:: :: (r -> z) -> (a -> b -> c -> d -> r) -> a -> b -> c -> d -> z
(.::) r -> z
f a -> b -> c -> d -> r
g a
a b
b c
c d
d = r -> z
f (a -> b -> c -> d -> r
g a
a b
b c
c d
d)

infixr 8 .::.

(.::.) :: (r -> z) -> (a -> b -> c -> d -> e -> r) -> a -> b -> c -> d -> e -> z
.::. :: (r -> z)
-> (a -> b -> c -> d -> e -> r) -> a -> b -> c -> d -> e -> z
(.::.) r -> z
f a -> b -> c -> d -> e -> r
g a
a b
b c
c d
d e
e = r -> z
f (a -> b -> c -> d -> e -> r
g a
a b
b c
c d
d e
e)

atSameType :: p a a -> p a a
atSameType :: p a a -> p a a
atSameType = p a a -> p a a
forall a. a -> a
id