| 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.
Equations
| Forall p = Forall_ p |
type family ForallF p f :: Constraint Source
A representation of the quantified constraint forall a. p (f a).
Equations
| ForallF p f = ForallF_ p f |
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).
Equations
| ForallT p t = ForallT_ p t |