Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class GHoistWorld (t :: (* -> *) -> * -> *) (m :: * -> *) a b where
- class GGraft a b where
- class GConvertSetter a b where
- class GGetEntity m a b where
- class GSetEntity m a b where
- def :: forall keep a. (Generic a, GDefault keep (Rep a)) => a
- class GDefault (keep :: Bool) f where
Documentation
class GHoistWorld (t :: (* -> *) -> * -> *) (m :: * -> *) a b where Source #
Utility class for implementing hoistStorage
.
gHoistWorld :: a x -> b x Source #
(Applicative (t m), GHoistWorld t m a c, GHoistWorld t m b d) => GHoistWorld t m ((:*:) * a b) ((:*:) * c d) Source # | |
GHoistWorld t m (K1 * i a) (K1 * i' a) Source # | |
(MonadTrans t, Functor (t m), Monad m) => GHoistWorld t m (K1 * i (VTable m a)) (K1 * i' (VTable (t m) a)) Source # | |
(Functor (t m), GHoistWorld t m f f') => GHoistWorld t m (M1 * i c f) (M1 * i' c' f') Source # | |
class GGraft a b where Source #
Utility class for implementing graftStorage
.
class GConvertSetter a b where Source #
Utility class for implementing convertSetter
.
gConvertSetter :: a x -> b x Source #
GConvertSetter (K1 * i (Maybe a)) (K1 * i' (Update a)) Source # | |
GConvertSetter (K1 * i a) (K1 * i' (Update a)) Source # | |
GConvertSetter (K1 * i a) (K1 * i' (Maybe a)) Source # | |
(GConvertSetter a c, GConvertSetter b d) => GConvertSetter ((:*:) * a b) ((:*:) * c d) Source # | |
GConvertSetter f f' => GConvertSetter (M1 * i c f) (M1 * i' c' f') Source # | |
class GGetEntity m a b where Source #
Utility class for implementing getEntity
.
gGetEntity :: a x -> Int -> Codensity m (b x) Source #
(Applicative m, GGetEntity m a c, GGetEntity m b d) => GGetEntity m ((:*:) * a b) ((:*:) * c d) Source # | |
Applicative m => GGetEntity m (K1 * i (Maybe (Int, a))) (K1 * i' (Maybe a)) Source # | |
Applicative m => GGetEntity m (K1 * i (IntMap a)) (K1 * i' (Maybe a)) Source # | |
Monad m => GGetEntity m (K1 * i (VTable m a)) (K1 * i' (Maybe a)) Source # | |
(Functor m, GGetEntity m f f') => GGetEntity m (M1 * i c f) (M1 * i' c' f') Source # | |
class GSetEntity m a b where Source #
Utility class for implementing setEntity
.
gSetEntity :: a x -> Int -> b x -> Codensity m (b x) Source #
(Applicative m, GSetEntity m a c, GSetEntity m b d) => GSetEntity m ((:*:) * a b) ((:*:) * c d) Source # | |
Applicative m => GSetEntity m (K1 * i (Update a)) (K1 * i' (IntMap a)) Source # | |
Monad m => GSetEntity m (K1 * i (Update a)) (K1 * i' (VTable m a)) Source # | |
Applicative m => GSetEntity m (K1 * i (Update a)) (K1 * i' (Maybe (Int, a))) Source # | |
(Functor m, GSetEntity m f f') => GSetEntity m (M1 * i c f) (M1 * i' c' f') Source # | |
class GDefault (keep :: Bool) f where Source #
Utility class for implementing various defaults. The keep
parameter is
used to statically describe whether or not to keep the previous value when
dealing with Update
fields.
GDefault keep (U1 *) Source # | |
GDefault False (K1 * i (Update c)) Source # | |
GDefault True (K1 * i (Update c)) Source # | |
(GDefault keep a, GDefault keep b) => GDefault keep ((:*:) * a b) Source # | |
GDefault keep (K1 * i (IntMap c)) Source # | |
GDefault keep (K1 * i (Maybe c)) Source # | |
GDefault keep f => GDefault keep (M1 * i c f) Source # | |
(Applicative m, KnownSymbol sym) => GDefault keep (M1 * S (MetaSel (Just Symbol sym) x y z) (K1 * i (VTable m a))) Source # | |