Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- class (forall a b. a ~ b => Coercible (f a) (f b)) => Nominal (f :: k -> l)
- data Nominality (f :: k -> l) where
- Nominality :: Nominal f => Nominality f
- applyNominal :: Coercion f g -> (a :~: b) -> Coercion (f a) (g b)
Documentation
class (forall a b. a ~ b => Coercible (f a) (f b)) => Nominal (f :: k -> l) Source #
A constraint witnessing that the next argument of the type constructor of
the f
type has the nominal type role.
This class is provided only for completeness, everything is automatically an instance of this class.
Instances
Nominal (f :: k -> l) Source # | |
Defined in Data.Type.Role.Nominal |
data Nominality (f :: k -> l) where Source #
A datatype witness of the nominal type role.
Nominality :: Nominal f => Nominality f |