HList-0.2: Heterogeneous listsSource codeContentsIndex
Data.HList.HListPrelude
Documentation
data HNil Source
Constructors
HNil
show/hide Instances
data HCons e l Source
Constructors
HCons e l
show/hide Instances
HTIntersect t l1 l2 => HTIntersectBool HTrue h t l1 (HCons h l2)
HDeleteMany e l l' => HDeleteManyCase HFalse e e' l (HCons e' l')
HLeftUnionBool HFalse r f (HCons f r)
HReverse (HCons a l) (HCons a' l') => HBuild' l a (HCons a' l')
HExtend e HNil (HCons e HNil)
(HOccurs' e l, HList l) => HOccursBool HFalse e (HCons e' l)
(HList l, HOccursNot e l) => HOccursBool HTrue e (HCons e l)
(HMemberM e l r, HMemberM' r e (HCons e' l) res) => HMemberM' HFalse e (HCons e' l) res
(HFoldr f v l r, Apply f ((,) e r) r') => HFoldr f v (HCons e l) r'
HasField l r v => HasField' HFalse l (HCons fld r) v
HasField' HTrue l (HCons (LVPair l v) r) v
HRearrange ls rout r' => HRearrange' l ls (HCons (LVPair l v) HNil) rout (HCons (LVPair l v) r')
H2ProjectByLabels ls r' rin rout => H2ProjectByLabels' HNothing ls (HCons f' r') rin (HCons f' rout)
HMemberM' HTrue e (HCons e l) (HJust l)
HUpdateAtHNat HZero e' (HCons e l) (HCons e' l)
HProjectByLabelP' HTrue l (HCons l ls) (HCons v vs) ls v vs
HProjectByLabelP l ls vs lso' v vso' => HProjectByLabelP' HFalse l (HCons l' ls) (HCons v' vs) (HCons l' lso') v (HCons v' vso')
HStagedEq HNil (HCons e l)
(HList l', HOccurs e l, HProject l l') => HProject l (HCons e l')
HOccursNot e l => HOccursNot e (HCons e' l)
Fail (TypeFound e) => HOccursNot e (HCons e l)
HOccursOpt e l => HOccursOpt e (HCons e' l)
HOccursOpt e (HCons e l)
(TypeEq e e' b, HOccursBool b e (HCons e' l)) => HOccurs' e (HCons e' l)
(HOccurs e l, HList l) => HOccurs e (HCons e' l)
(HList l, HOccursNot e l) => HOccurs e (HCons e l)
(HOccursFst e l, HList l) => HOccursFst e (HCons e' l)
HList l => HOccursFst e (HCons e l)
(HOccursMany1 e l, HList l) => HOccursMany1 e (HCons e' l)
(HOccursMany e l, HList l) => HOccursMany1 e (HCons e l)
(HOccursMany e l, HList l) => HOccursMany e (HCons e' l)
(HOccursMany e l, HList l) => HOccursMany e (HCons e l)
(Narrow rout r', H2ProjectByLabels (HCons l HNil) r (HCons (LVPair l v) HNil) rout) => Narrow r (HCons (LVPair l v) r')
HList l => HEq HNil (HCons e l) HFalse
(TypeEq e e' b, HTMember e l b', HOr b b' b'') => HTMember e (HCons e' l) b''
(HEq e e' b, HMemberM' b e (HCons e' l) res) => HMemberM e (HCons e' l) res
(HEq e e' b, HMember e l b', HOr b b' b'') => HMember e (HCons e' l) b''
(HEq e e' b, HFind' b e l n) => HFind e (HCons e' l) n
(HMapOut f l e', Apply f e e') => HMapOut f (HCons e l) e'
HReverse' (HCons a l1) l2' l3 => HReverse' l1 (HCons a l2') l3
(HList l, HDeleteMany e l l', TypeCast (HCons e' l') l'') => HDeleteMany e (HCons e' l) l''
(HList l, HDeleteMany e l l') => HDeleteMany e (HCons e l) l'
(HEq e e' b1, HOrdMember e l b2, HOr b1 b2 b) => HOrdMember e (HCons e' l) b
HProjectByHNats HNil (HCons e l) HNil
HDeleteAtHNat HZero (HCons e l) l
HLookupByHNat HZero (HCons e l) e
(TypeEq e' e b, HType2HNatCase b e l n) => HType2HNat e (HCons e' l) n
(HList l, TypeEq e e' b, HDeleteManyCase b e e' l l') => HDeleteMany e (HCons e' l) l'
(HEq l l' b, HasField' b l (HCons (LVPair l' v') r) v) => HasField l (HCons (LVPair l' v') r) v
(H2ProjectByLabels (HCons l HNil) a rin rout, NarrowM' rin rout b res) => NarrowM a (HCons (LVPair l v) b) res
(HEq l l' b, HProjectByLabelP' b l (HCons l' ls) vs lso v vso) => HProjectByLabelP l (HCons l' ls) vs lso v vso
Fail (ExtraField l) => HRearrange HNil (HCons (LVPair l v) a) (ExtraField l)
(Apply f x y, HMap f xs ys) => HMap f (HCons x xs) (HCons y ys)
HList l => Apply ApplyHCons ((,) e l) (HCons e l)
HList l => HExtend e (HCons e' l) (HCons e (HCons e' l))
HMemberM' (HJust l') e (HCons e' l) (HJust (HCons e' l'))
(HUpdateAtHNat n e' l l', HNat n) => HUpdateAtHNat (HSucc n) e' (HCons e l) (HCons e l')
H2ProjectByLabels ls' r' rin rout => H2ProjectByLabels' (HJust ls') ls (HCons f' r') (HCons f' rin) rout
HBetween (HSucc HZero) (HCons HZero HNil)
(HLookupByHNat n l e', HNat n) => HLookupByHNat (HSucc n) (HCons e l) e'
Apply f e e' => Apply (HMap' f) ((,) e l) (HCons e' l)
(HDeleteAtHNat n l l', HNat n) => HDeleteAtHNat (HSucc n) (HCons e l) (HCons e l')
(Eq e, Eq l) => Eq (HCons e l)
(Read e, Read l) => Read (HCons e l)
(Show e, Show l) => Show (HCons e l)
(Typeable x, Typeable y) => Typeable (HCons x y)
(HMember e l HFalse, HSet l) => HSet (HCons e l)
(HNat n, HNats ns) => HNats (HCons n ns)
HList l => HList (HCons e l)
(HOccursNot e l, HTypeIndexed l) => HTypeIndexed (HCons e l)
HTypeProxied l => HTypeProxied (HCons (Proxy e) l)
(ShowLabel l, Show v, ShowComponents r) => ShowComponents (HCons (LVPair l v) r)
(HMember x ls xmem, HLabelSet' x ls xmem) => HLabelSet (HCons x ls)
HRLabelSet (HCons x HNil)
(HEq l1 l2 leq, HRLabelSet' l1 v1 l2 v2 leq r) => HRLabelSet (HCons (LVPair l1 v1) (HCons (LVPair l2 v2) r))
HasNoProxies l => HasNoProxies (HCons e l)
Fail (ProxyFound x) => HasNoProxies (HCons (Proxy x) l)
Fail (ProxyFound x) => HasNoProxies (HCons (LVPair lab (Proxy x)) l)
HStagedEq (HCons e l) HNil
FromHJust l l' => FromHJust (HCons HNothing l) l'
HList2List l e => HList2List (HCons e l) e
(NaiveHReverse l l', HAppend l' (HCons e HNil) l'') => NaiveHReverse (HCons e l) l''
HTail (HCons e l) l
HHead (HCons e l) e
(HLub (HCons h (HCons h'' t)) e', HLub (HCons h' (HCons h'' t)) e'', LubNarrow e' e'' e, HLub (HCons e (HCons h'' t)) e) => HLub (HCons h (HCons h' (HCons h'' t))) e
LubNarrow h h' e => HLub (HCons h (HCons h' HNil)) e
HList l => HEq (HCons e l) HNil HFalse
(HTMember h l1 b, HTIntersectBool b h t l1 l2) => HTIntersect (HCons h t) l1 l2
(HOrdMember e y b, HDiff x y z, HCond b z (HCons e z) z') => HDiff (HCons e x) y z'
(H2ProjectByLabels (HCons l HNil) r rin rout, HRearrange' l ls rin rout r') => HRearrange (HCons l ls) r r'
H2ProjectByLabels (HCons l ls) HNil HNil HNil
(NarrowM rout b res', NarrowM'' f res' res) => NarrowM' (HCons f HNil) rout b res
HSplit l l' l'' => HSplit (HCons ((,) e HFalse) l) l' (HCons e l'')
(HList l, HAppend l l' l'') => HAppend (HCons x l) l' (HCons x l'')
(HType2HNat e l n, HTypes2HNats ps l ns) => HTypes2HNats (HCons (Proxy e) ps) l (HCons n ns)
(HLookupByHNat n l ((,) e b), HUpdateAtHNat n ((,) e HFalse) l l''', HSplitByHNats' ns l''' l' l'') => HSplitByHNats' (HCons n ns) l (HCons e l') l''
(HLength l n, HNat n, HList l) => HLength (HCons a l) (HSucc n)
(TypeEq e e' b, HStagedEq l l', HStagedEq' b e e') => HStagedEq (HCons e l) (HCons e' l')
FromHJust l l' => FromHJust (HCons (HJust e) l) (HCons e l')
ToHJust l l' => ToHJust (HCons e l) (HCons (HJust e) l')
HZippable l l' => HZippable (HCons e l) (HCons e' l')
RecordValues r' vs => RecordValues (HCons (LVPair l v) r') (HCons v vs)
RecordLabels r' ls => RecordLabels (HCons (LVPair l v) r') (HCons l ls)
HSameLength l1 l2 => HSameLength (HCons e1 l1) (HCons e2 l2)
HMaybied r r' => HMaybied (HCons (LVPair l (Proxy v)) r) (HCons (LVPair l (Maybe v)) r')
(HList l, HList l', HEq e e' b, HEq l l' b', HAnd b b' b'') => HEq (HCons e l) (HCons e' l') b''
HSplit l l' l'' => HSplit (HCons ((,) e HTrue) l) (HCons e l') l''
(HMemberM l' (HCons l ls) b, H2ProjectByLabels' b (HCons l ls) (HCons (LVPair l' v') r') rin rout) => H2ProjectByLabels (HCons l ls) (HCons (LVPair l' v') r') rin rout
(HLookupByHNat n (HCons e l) e', HProjectByHNats ns (HCons e l) l') => HProjectByHNats (HCons n ns) (HCons e l) (HCons e' l')
HZip tx ty l => HZip (HCons hx tx) (HCons hy ty) (HCons ((,) hx hy) l)
(RecordR2P r ls vs, HRLabelSet (HCons (LVPair l v) r), HLabelSet (HCons l ls), HSameLength ls vs) => RecordR2P (HCons (LVPair l v) r) (HCons l ls) (HCons v vs)
H2ProjectByLabels (HCons l ls) (RecordP HNil HNil) (RecordP HNil HNil) (RecordP HNil HNil)
class HList l Source
show/hide Instances
hNil :: HNilSource
hCons :: HList l => e -> l -> HCons e lSource
class HHead l h | l -> h whereSource
Methods
hHead :: l -> hSource
show/hide Instances
HHead (HCons e l) e
class HTail l l' | l -> l' whereSource
Methods
hTail :: l -> l'Source
show/hide Instances
HTail (HCons e l) l
class HExtend e l l' | e l -> l', l' -> e l whereSource
Methods
hExtend :: e -> l -> l'Source
show/hide Instances
HExtend e HNil (HCons e HNil)
HExtend e HNil (HCons e HNil)
(HOccursNot e l, HTypeIndexed l) => HExtend e (TIP l) (TIP (HCons e l))
HList l => HExtend e (HCons e' l) (HCons e (HCons e' l))
HRLabelSet (HCons (LVPair l v) r) => HExtend (LVPair l v) (Record r) (Record (HCons (LVPair l v) r))
HRLabelSet (HCons (LVPair l v) r) => HExtend (LVPair l v) (Record r) (Record (HCons (LVPair l v) r))
(HLabelSet (HCons l ls), HSameLength ls vs) => HExtend (LVPair l v) (RecordP ls vs) (RecordP (HCons l ls) (HCons v vs))
(HLabelSet (HCons l ls), HSameLength ls vs) => HExtend (LVPair l v) (RecordP ls vs) (RecordP (HCons l ls) (HCons v vs))
append :: [a] -> [a] -> [a]Source
class HAppend l l' l'' | l l' -> l'' whereSource
Methods
hAppend :: l -> l' -> l''Source
show/hide Instances
HList l => HAppend HNil l l
(HAppend l l' l'', HTypeIndexed l'') => HAppend (TIP l) (TIP l') (TIP l'')
(HRLabelSet r'', HAppend r r' r'') => HAppend (Record r) (Record r') (Record r'')
(HList l, HAppend l l' l'') => HAppend (HCons x l) l' (HCons x l'')
(HLabelSet ls'', HAppend ls ls' ls'', HAppend vs vs' vs'', HSameLength ls'' vs'') => HAppend (RecordP ls vs) (RecordP ls' vs') (RecordP ls'' vs'')
class HReverse l1 l2 | l1 -> l2, l2 -> l1 whereSource
Methods
hReverse :: l1 -> l2Source
class HReverse' l1 l2 l3 | l1 l2 -> l3 whereSource
Methods
hReverse' :: l1 -> l2 -> l3Source
show/hide Instances
HReverse' l1 HNil l1
HReverse' (HCons a l1) l2' l3 => HReverse' l1 (HCons a l2') l3
class NaiveHReverse l l' | l -> l' whereSource
Methods
naiveHReverse :: l -> l'Source
show/hide Instances
hEnd :: HCons t t1 -> HCons t t1Source
hBuild :: HBuild' HNil a r => a -> rSource
class HBuild' l a r | r -> a l whereSource
Methods
hBuild' :: l -> a -> rSource
show/hide Instances
HBuild' (HCons a l) b r => HBuild' l a (b -> r)
HReverse (HCons a l) (HCons a' l') => HBuild' l a (HCons a' l')
class Apply f a r | f a -> r whereSource
Methods
apply :: f -> a -> rSource
show/hide Instances
Apply Id x x
Show x => Apply HShow x (IO ())
Show x => Apply HShow x (IO ())
Apply HRmTag ((,) e t) e
Apply HRmTag ((,) e t) e
HList l => Apply ApplyHCons ((,) e l) (HCons e l)
HList l => Apply ApplyHCons ((,) e l) (HCons e l)
HList l => Apply ApplyHCons ((,) e l) (HCons e l)
Apply (HAddTag t) e ((,) e t)
Apply (HAddTag t) e ((,) e t)
(Monad m, Apply f x (m ())) => Apply (HSeq f) ((,) x (m ())) (m ())
(Monad m, Apply f x (m ())) => Apply (HSeq f) ((,) x (m ())) (m ())
Apply f e e' => Apply (HMap' f) ((,) e l) (HCons e' l)
Apply f e e' => Apply (HMap' f) ((,) e l) (HCons e' l)
Apply f e e' => Apply (HMap' f) ((,) e l) (HCons e' l)
Apply (x -> y) x y
data Id Source
Constructors
Id
show/hide Instances
Apply Id x x
class HList l => HFoldr f v l r | f v l -> r whereSource
Methods
hFoldr :: f -> v -> l -> rSource
show/hide Instances
HFoldr f v HNil v
(HFoldr f v l r, Apply f ((,) e r) r') => HFoldr f v (HCons e l) r'
class HMap f l l' | f l -> l' whereSource
Methods
hMap :: f -> l -> l'Source
show/hide Instances
HMap f HNil HNil
(Apply f x y, HMap f xs ys) => HMap f (HCons x xs) (HCons y ys)
class HMapOut f r e whereSource
Methods
hMapOut :: f -> r -> [e]Source
show/hide Instances
HMapOut f HNil e
(HMapOut f l e', Apply f e e') => HMapOut f (HCons e l) e'
hMapM :: (Monad m, HMapOut f l (m e)) => f -> l -> [m e]Source
hMapM_ :: (Monad m, HMapOut f l (m ())) => f -> l -> m ()Source
append' :: [a] -> [a] -> [a]Source
hAppend' :: HFoldr ApplyHCons v l r => l -> v -> rSource
data ApplyHCons Source
Constructors
ApplyHCons
show/hide Instances
HList l => Apply ApplyHCons ((,) e l) (HCons e l)
data HMap' f Source
Constructors
HMap' f
show/hide Instances
Apply f e e' => Apply (HMap' f) ((,) e l) (HCons e' l)
hMap' :: HFoldr (HMap' f) HNil l r => f -> l -> rSource
data HShow Source
Constructors
HShow
show/hide Instances
Show x => Apply HShow x (IO ())
data HSeq x Source
Constructors
HSeq x
show/hide Instances
(Monad m, Apply f x (m ())) => Apply (HSeq f) ((,) x (m ())) (m ())
class HStagedEq' b e e' whereSource
Methods
hStagedEq' :: b -> e -> e' -> BoolSource
show/hide Instances
class HList l => HNats l Source
show/hide Instances
HNats HNil
(HNat n, HNats ns) => HNats (HCons n ns)
class HSet l Source
show/hide Instances
HSet HNil
(HMember e l HFalse, HSet l) => HSet (HCons e l)
class HNat n => HFind e l n | e l -> n whereSource
Methods
hFind :: e -> l -> nSource
show/hide Instances
(HEq e e' b, HFind' b e l n) => HFind e (HCons e' l) n
class HNat n => HFind' b e l n | b e l -> n whereSource
Methods
hFind' :: b -> e -> l -> nSource
show/hide Instances
HFind' HTrue e l HZero
HFind' HTrue e l HZero
HFind e l n => HFind' HFalse e l (HSucc n)
HFind e l n => HFind' HFalse e l (HSucc n)
class HBool b => HMember e l b | e l -> bSource
show/hide Instances
HMember e HNil HFalse
HMember e HNil HFalse
(HEq e e' b, HMember e l b', HOr b b' b'') => HMember e (HCons e' l) b''
hMember :: HMember e l b => e -> l -> bSource
class HMemberM e l r | e l -> rSource
show/hide Instances
HMemberM e HNil HNothing
HMemberM e HNil HNothing
(HEq e e' b, HMemberM' b e (HCons e' l) res) => HMemberM e (HCons e' l) res
class HMemberM' b e l r | b e l -> rSource
show/hide Instances
HMemberM' HNothing e l HNothing
(HMemberM e l r, HMemberM' r e (HCons e' l) res) => HMemberM' HFalse e (HCons e' l) res
(HMemberM e l r, HMemberM' r e (HCons e' l) res) => HMemberM' HFalse e (HCons e' l) res
HMemberM' HTrue e (HCons e l) (HJust l)
HMemberM' HTrue e (HCons e l) (HJust l)
HMemberM' HTrue e (HCons e l) (HJust l)
HMemberM' (HJust l') e (HCons e' l) (HJust (HCons e' l'))
HMemberM' (HJust l') e (HCons e' l) (HJust (HCons e' l'))
class HBool b => HTMember e l b | e l -> bSource
show/hide Instances
HTMember e HNil HFalse
HTMember e HNil HFalse
(TypeEq e e' b, HTMember e l b', HOr b b' b'') => HTMember e (HCons e' l) b''
hTMember :: HTMember e l b => e -> l -> bSource
class HTIntersect l1 l2 l3 | l1 l2 -> l3 whereSource
Methods
hTIntersect :: l1 -> l2 -> l3Source
show/hide Instances
HTIntersect HNil l HNil
(HTMember h l1 b, HTIntersectBool b h t l1 l2) => HTIntersect (HCons h t) l1 l2
class HBool b => HTIntersectBool b h t l1 l2 | b h t l1 -> l2 whereSource
Methods
hTIntersectBool :: b -> h -> t -> l1 -> l2Source
show/hide Instances
HTIntersect t l1 l2 => HTIntersectBool HFalse h t l1 l2
HTIntersect t l1 l2 => HTIntersectBool HTrue h t l1 (HCons h l2)
HTIntersect t l1 l2 => HTIntersectBool HTrue h t l1 (HCons h l2)
class HList2List l e whereSource
Methods
hList2List :: l -> [e]Source
show/hide Instances
class ToHJust l l' | l -> l' whereSource
Methods
toHJust :: l -> l'Source
show/hide Instances
class FromHJust l l' | l -> l' whereSource
Methods
fromHJust :: l -> l'Source
show/hide Instances
data HAddTag t Source
Constructors
HAddTag t
show/hide Instances
Apply (HAddTag t) e ((,) e t)
data HRmTag Source
Constructors
HRmTag
show/hide Instances
Apply HRmTag ((,) e t) e
hAddTag :: HMap (HAddTag t) l l' => t -> l -> l'Source
hRmTag :: HMap HRmTag l l' => l -> l'Source
hFlag :: HMap (HAddTag HTrue) l l' => l -> l'Source
class HSplit l l' l'' | l -> l' l'' whereSource
Methods
hSplit :: l -> (l', l'')Source
show/hide Instances
HSplit HNil HNil HNil
HSplit l l' l'' => HSplit (HCons ((,) e HFalse) l) l' (HCons e l'')
HSplit l l' l'' => HSplit (HCons ((,) e HTrue) l) (HCons e l') l''
Produced by Haddock version 2.4.2