Copyright | (c) Marcin Mrotek 2014 |
---|---|
License | BSD3 |
Maintainer | marcin.jan.mrotek@gmail.com |
Safe Haskell | None |
Language | Haskell2010 |
Extensions |
|
Manipulation of constraints that apply to field labels (as opposed to actual types stored in the record).
- type family FieldAll (rs :: [k]) (c :: k -> Constraint) :: Constraint where ...
- data DictProxy c a where
- getProxy :: DictProxy c a -> Proxy a
- reifyFieldConstraint :: FieldAll rs c => proxy c -> Rec Proxy rs -> Rec (DictProxy c) rs
Documentation
type family FieldAll (rs :: [k]) (c :: k -> Constraint) :: Constraint where ... Source #
Assert that all field labels in a given type list satisfy a given constraint.
data DictProxy c a where Source #
A data type that reifies a constraint. Pattern match on the DictProxy
constructor to bring the constraint into scope.