| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Data.Type.Coercion.Sub.Internal
Description
This module exposes internals of Data.Type.Coercion.Sub.
Using this module allows to violate the premises Sub type provides.
It is advisable not to import this module if there is another way,
and to limit the amount of code accesible to this module.
Documentation
newtype Sub (a :: k) (b :: k) Source #
Sub is a newtype wrapper around Coercion, but made opaque to hide
the ability to coerce into other direction.
This is convenient for newtype wrappers which give additional guarantees.
You can make Sub witnesses by using combinators in this module, or the methods of
the instance: Category Subid and (..)
Instances
| Category (Sub :: k -> k -> Type) Source # | |
| Coercible a b => Bounded (Sub a b) Source # | |
| Coercible a b => Enum (Sub a b) Source # | |
| Coercible a b => Read (Sub a b) Source # | |
| Show (Sub a b) Source # | |
| Eq (Sub a b) Source # | |
| Ord (Sub a b) Source # | |
Defined in Data.Type.Coercion.Sub.Internal | |