Safe Haskell | None |
---|---|
Language | Haskell2010 |
Data.Type.OpenWitness.Typeable
Description
This is an approximate re-implementation of Data.Typeable using open witnesses.
Synopsis
- class Typeable (a :: k) where
- type Fun = (->)
- cast :: (Typeable a, Typeable b) => a -> Maybe b
- gcast :: forall k (a :: k) (b :: k) c. (Typeable a, Typeable b) => c a -> Maybe (c b)
- mkFunTy :: TypeRep a -> TypeRep b -> TypeRep (a -> b)
- funResultTy :: TypeRep (a -> b) -> TypeRep a -> Maybe (TypeRep b)
- mkAppTy :: forall k1 k2 (f :: k1 -> k2) (a :: k1). TypeRep f -> TypeRep a -> TypeRep (f a)
Documentation
class Typeable (a :: k) where Source #
types of kind Type
with a representation
Instances
Typeable () Source # | |
Defined in Data.Type.OpenWitness.Typeable | |
Typeable Bool Source # | |
Typeable Char Source # | |
Typeable Constraint Source # | |
Defined in Data.Type.OpenWitness.Typeable Methods | |
Typeable Int Source # | |
Typeable Type Source # | |
(Typeable f, Typeable a) => Typeable (f a :: k2) Source # | |
Defined in Data.Type.OpenWitness.Typeable | |
Typeable Either Source # | |
Typeable (,) Source # | |
Typeable Maybe Source # | |
Typeable [] Source # | |
Typeable (Typeable :: k -> Constraint) Source # | |
Defined in Data.Type.OpenWitness.Typeable | |
Typeable (TypeRep :: k -> Type) Source # | |
Typeable (->) Source # | |
Defined in Data.Type.OpenWitness.Typeable |
mkFunTy :: TypeRep a -> TypeRep b -> TypeRep (a -> b) Source #
given representations of a
and b
, make a representation of a -> b