module Text.Regex.Do.Type.Internal where
class Hint hint where
unhint::hint a -> a
hint::a -> hint a
instance Hint Test where
unhint :: Test a -> a
unhint (Test a0 :: a
a0) = a
a0
hint :: a -> Test a
hint = a -> Test a
forall a. a -> Test a
Test
newtype Test a = Test a
data Body b = Body b deriving (a -> Body b -> Body a
(a -> b) -> Body a -> Body b
(forall a b. (a -> b) -> Body a -> Body b)
-> (forall a b. a -> Body b -> Body a) -> Functor Body
forall a b. a -> Body b -> Body a
forall a b. (a -> b) -> Body a -> Body b
forall (f :: * -> *).
(forall a b. (a -> b) -> f a -> f b)
-> (forall a b. a -> f b -> f a) -> Functor f
<$ :: a -> Body b -> Body a
$c<$ :: forall a b. a -> Body b -> Body a
fmap :: (a -> b) -> Body a -> Body b
$cfmap :: forall a b. (a -> b) -> Body a -> Body b
Functor)
instance Applicative Body where
pure :: a -> Body a
pure p0 :: a
p0 = a -> Body a
forall a. a -> Body a
Body a
p0
<*> :: Body (a -> b) -> Body a -> Body b
(<*>) (Body f0 :: a -> b
f0) (Body a0 :: a
a0) = b -> Body b
forall a. a -> Body a
Body (b -> Body b) -> b -> Body b
forall a b. (a -> b) -> a -> b
$ a -> b
f0 a
a0