Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.Type.Coercion.Related.Internal
Description
This module exposes internals of Data.Type.Coercion.Related.
Using this module allows to violate the premises Related
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.
Synopsis
- newtype Related (a :: k) (b :: k) = Related {
- getRelated :: Coercion a b
Documentation
newtype Related (a :: k) (b :: k) Source #
Related a b
witnesses a
and b
shares the same runtime representation,
but nothing about whether a
can be safely coerced to or from b
.
You can make Related
witnesses by using combinators in this module, or the methods of
the
instance: Category
Relatedid
and (
..
)
Constructors
Related | |
Fields
|
Instances
Category (Related :: k -> k -> Type) Source # | |
Coercible a b => Bounded (Related a b) Source # | |
Coercible a b => Enum (Related a b) Source # | |
Defined in Data.Type.Coercion.Related.Internal Methods succ :: Related a b -> Related a b # pred :: Related a b -> Related a b # toEnum :: Int -> Related a b # fromEnum :: Related a b -> Int # enumFrom :: Related a b -> [Related a b] # enumFromThen :: Related a b -> Related a b -> [Related a b] # enumFromTo :: Related a b -> Related a b -> [Related a b] # enumFromThenTo :: Related a b -> Related a b -> Related a b -> [Related a b] # | |
Coercible a b => Read (Related a b) Source # | |
Show (Related a b) Source # | |
Eq (Related a b) Source # | |
Ord (Related a b) Source # | |
Defined in Data.Type.Coercion.Related.Internal |