Safe Haskell | None |
---|---|

Language | Haskell2010 |

## Synopsis

- ghoist :: (Generic (r f), Generic (r g), GHoist (Rep (r f)) (Rep (r g)) f g '["close"]) => (forall x. f x -> g x) -> r f -> r g
- ghoist0 :: (Generic (r f), Generic (r g), GHoist (Rep (r f)) (Rep (r g)) f g '[]) => (forall x. f x -> g x) -> r f -> r g
- ghoist' :: (Generic (r f), Generic (r g), GHoist (Rep (r f)) (Rep (r g)) f g ignored) => proxy ignored -> (forall x. f x -> g x) -> r f -> r g

# Documentation

ghoist :: (Generic (r f), Generic (r g), GHoist (Rep (r f)) (Rep (r g)) f g '["close"]) => (forall x. f x -> g x) -> r f -> r g Source #

Runs `hoist`

on the return values each field of `r`

with the given natural transformation function, ignoring
the `close`

field, if it exists.

ghoist0 :: (Generic (r f), Generic (r g), GHoist (Rep (r f)) (Rep (r g)) f g '[]) => (forall x. f x -> g x) -> r f -> r g Source #

Runs `hoist`

on the return values each field of `r`

with the given natural transformation function; no fields
are ignored.

ghoist' :: (Generic (r f), Generic (r g), GHoist (Rep (r f)) (Rep (r g)) f g ignored) => proxy ignored -> (forall x. f x -> g x) -> r f -> r g Source #

Runs `hoist`

on the return values each field of `r`

with the given natural transformation function.
A supplied of `ignored`

fields is provided to signal which
fields should not be transformed.