Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type family Using (ms :: Maybe Symbol) (x :: *) (xs :: [*]) where ...
- newtype Overridden (ms :: Maybe Symbol) a (xs :: [*]) = Overridden a
- data As (o :: k) n
- newtype Override a (xs :: [*]) = Override a
- unOverride :: Override a xs -> a
- override :: a -> proxy xs -> Override a xs
- unOverridden :: Overridden ms a xs -> a
Documentation
type family Using (ms :: Maybe Symbol) (x :: *) (xs :: [*]) where ... Source #
Type family used to determine which override from xs
to replace x
with, if any. The ms
holds the field name
for x
, if applicable.
newtype Overridden (ms :: Maybe Symbol) a (xs :: [*]) Source #
Used at the leaf nodes of a generic Rep
newtype Override a (xs :: [*]) Source #
The feature of this library. For use with DerivingVia.
Apply it to a type a
and supply a type-level list of instance
overrides xs
.
Override a |
unOverride :: Override a xs -> a Source #
Unwrap an Override
value.
override :: a -> proxy xs -> Override a xs Source #
Construct an Override
using a proxy of overrides.
unOverridden :: Overridden ms a xs -> a Source #
Unwrap an Overridden
value.