Safe Haskell | None |
---|
- data HList where
- class HLength xs where
- class ConstraintBox box a where
- box :: a -> box
- unsafeUnbox :: box -> a
- class Downcast h box where
- downcast :: h -> [box]
- downcastAs :: (a -> box) -> h -> [box]
- data ShowBox
- data AnyBox
- data Nat1
- type family ToNat1 n :: Nat1
- type family FromNat1 n :: Nat
Heterogenous List
The heterogenous list
(Show x, Show (HList xs)) => Show (HList (: * x xs)) | |
Show (HList ([] *)) | |
(Monoid x, Monoid (HList xs)) => Monoid (HList (: * x xs)) | |
Monoid (HList ([] *)) | |
HLength (HList xs) => HLength (HList (: * x xs)) | |
HLength (HList ([] *)) | |
(ConstraintBox box x, Downcast (HList xs) box) => Downcast (HList (: * x xs)) box | |
Downcast (HList ([] *)) a |
Used only for the HList class to determine its length
Downcasting
class Downcast h box whereSource
downcastAs :: (a -> box) -> h -> [box]Source
Boxes
Use this box unless you know for certain that your types won't have a show instance.
Show ShowBox | |
Show a => ConstraintBox ShowBox a |