| Safe Haskell | None |
|---|
Data.Vector.Heterogenous.HList
- 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
- type family Distribute xs t :: [b]
- type family Replicate x n :: [a]
- type family Map f xs :: [a]
- type family Reverse xs :: [a]
- type family xs :! i :: a
- data Nat1
- type family ToNat1 n :: Nat1
- type family FromNat1 n :: Nat
Heterogenous List
The heterogenous list
Instances
| (Eq x, Eq (HList xs)) => Eq (HList (: * x xs)) | |
| Eq (HList ([] *)) | |
| (Ord x, Ord (HList xs)) => Ord (HList (: * x xs)) | |
| Ord (HList ([] *)) | |
| (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 ConstraintBox box a whereSource
Instances
| Show a => ConstraintBox ShowBox a |
Boxes
Use this box unless you know for certain that your types won't have a show instance.
Instances
| Show ShowBox | |
| Show a => ConstraintBox ShowBox a |
Type functions
Type Lists
type family Distribute xs t :: [b]Source