| Copyright | (C) 2011-2015 Edward Kmett, (C) 2015 Ørjan Johansen |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | Trustworthy |
| Language | Haskell2010 |
Data.Constraint.Forall
Description
This module uses a trick to provide quantification over constraints.
Documentation
type family Forall p :: Constraint Source
A representation of the quantified constraint forall a. p a.
type family ForallF p f :: Constraint Source
A representation of the quantified constraint forall a. p (f a).
instF :: forall p f a. ForallF p f :- p (f a) Source
Instantiate a quantified constraint at type ForallF p fa.
inst1 :: forall p f. Forall p :- p f Source
Instantiate a quantified constraint on kind * -> *.
This is now redundant since became polykinded.inst
type family ForallT p t :: Constraint Source
A representation of the quantified constraint forall f a. p (t f a).