HList-0.1: Heterogeneous listsSource codeContentsIndex
Data.HList
Documentation
data HTrue Source
show/hide Instances
hTrue :: HTrueSource
data HFalse Source
show/hide Instances
hFalse :: HFalseSource
class HBool x Source
show/hide Instances
class (HBool t, HBool t', HBool t'') => HAnd t t' t'' | t t' -> t'' whereSource
Methods
hAnd :: t -> t' -> t''Source
show/hide Instances
class (HBool t, HBool t', HBool t'') => HOr t t' t'' | t t' -> t'' whereSource
Methods
hOr :: t -> t' -> t''Source
show/hide Instances
class HBool t => HCond t x y z | t x y -> z whereSource
Methods
hCond :: t -> x -> y -> zSource
show/hide Instances
HCond HFalse x y y
HCond HTrue x y x
data HZero Source
show/hide Instances
data HSucc n Source
show/hide Instances
HFind e l n => HFind' HFalse e l (HSucc n)
HType2HNat e l n => HType2HNatCase HFalse e l (HSucc n)
HNat n => HLt HZero (HSucc n) HTrue
HNat n => HEq HZero (HSucc n) HFalse
(HNat n, Show (HSucc n)) => Show (HSucc (HSucc n))
Show (HSucc HZero)
HNat2Integral n => HNat2Integral (HSucc n)
HNat n => HNat (HSucc n)
(HNat x, HBetween (HSucc x) y, HAppend y (HCons (HSucc x) HNil) z, HList y) => HBetween (HSucc (HSucc x)) z
HNat n => HLt (HSucc n) HZero HFalse
HNat n => HEq (HSucc n) HZero HFalse
(HUpdateAtHNat n e' l l', HNat n) => HUpdateAtHNat (HSucc n) e' (HCons e l) (HCons e l')
(HNat n, HNat n', HLt n n' b) => HLt (HSucc n) (HSucc n') b
(HNat n, HNat n', HEq n n' b) => HEq (HSucc n) (HSucc n') b
HBetween (HSucc HZero) (HCons HZero HNil)
(HLookupByHNat n l e', HNat n) => HLookupByHNat (HSucc n) (HCons e l) e'
(HDeleteAtHNat n l l', HNat n) => HDeleteAtHNat (HSucc n) (HCons e l) (HCons e l')
(HLength l n, HNat n, HList l) => HLength (HCons a l) (HSucc n)
hZero :: HZeroSource
hSucc :: HNat n => n -> HSucc nSource
hPred :: HNat n => HSucc n -> nSource
class HNat n Source
show/hide Instances
class HNat n => HNat2Integral n whereSource
Methods
hNat2Integral :: Integral i => n -> iSource
show/hide Instances
data HNothing Source
Constructors
HNothing
show/hide Instances
data HJust x Source
Constructors
HJust x
show/hide Instances
NarrowM a HNil (HJust (Record HNil))
HMemberM' HTrue e (HCons e l) (HJust l)
NarrowM'' f (HJust (Record r)) (HJust (Record (HCons f r)))
Show x => Show (HJust x)
HMemberM' (HJust l') e (HCons e' l) (HJust (HCons e' l'))
H2ProjectByLabels ls' r' rin rout => H2ProjectByLabels' (HJust ls') ls (HCons f' r') (HCons f' rin) rout
RecordEquiv' (r1 -> HJust r2) (r2 -> HJust r1) (HJust ((,) (r1 -> r2) (r2 -> r1)))
class HBool b => HEq x y b | x y -> bSource
show/hide Instances
HEq HZero HZero HTrue
HEq HZero HZero HTrue
HEq HNil HNil HTrue
HEq HNil HNil HTrue
HNat n => HEq HZero (HSucc n) HFalse
HNat n => HEq HZero (HSucc n) HFalse
HNat n => HEq HZero (HSucc n) HFalse
HList l => HEq HNil (HCons e l) HFalse
HList l => HEq HNil (HCons e l) HFalse
HList l => HEq HNil (HCons e l) HFalse
HNat n => HEq (HSucc n) HZero HFalse
HNat n => HEq (HSucc n) HZero HFalse
HNat n => HEq (HSucc n) HZero HFalse
TypeEq x y b => HEq (Proxy x) (Proxy y) b
(HNat n, HNat n', HEq n n' b) => HEq (HSucc n) (HSucc n') b
HList l => HEq (HCons e l) HNil HFalse
HList l => HEq (HCons e l) HNil HFalse
HList l => HEq (HCons e l) HNil HFalse
(HList l, HList l', HEq e e' b, HEq l l' b', HAnd b b' b'') => HEq (HCons e l) (HCons e' l') b''
hEq :: HEq x y b => x -> y -> bSource
class HStagedEq x y whereSource
Methods
hStagedEq :: x -> y -> BoolSource
show/hide Instances
class HBool b => HLt x y b | x y -> bSource
show/hide Instances
hLt :: HLt x y b => x -> y -> bSource
class HBool b => TypeEq x y b | x y -> bSource
show/hide Instances
typeEq :: TypeEq t t' b => t -> t' -> bSource
proxyEq :: TypeEq t t' b => Proxy t -> Proxy t' -> bSource
class TypeCast x y | x -> y, y -> x whereSource
Methods
typeCast :: x -> ySource
data Proxy e Source
show/hide Instances
Show (Proxy e)
Typeable x => Typeable (Proxy x)
Typeable x => ShowLabel (Proxy x)
TypeEq x y b => HEq (Proxy x) (Proxy y) b
proxy :: Proxy eSource
toProxy :: e -> Proxy eSource
unProxy :: Proxy e -> eSource
class TypeEqTrue x y Source
class TypeEqFalse x y Source
typeEqTrue :: TypeEqTrue x y => x -> y -> ()Source
typeEqFalse :: TypeEqFalse x y => x -> y -> ()Source
class SubType l l' Source
show/hide Instances
(HOccurs e l, SubType (TIP l) (TIP l')) => SubType (TIP l) (TIP (HCons e l'))
SubType (TIP l) (TIP HNil)
(RecordLabels r' ls, H2ProjectByLabels ls r r' rout) => SubType (Record r) (Record r')
subType :: SubType l l' => l -> l' -> ()Source
class Fail x Source
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
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)
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
(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 HFalse, HLabelSet ls) => HLabelSet (HCons x ls)
HRLabelSet (HCons x HNil)
(HEq l1 l2 HFalse, HRLabelSet (HCons (LVPair l2 v2) r), HRLabelSet (HCons (LVPair l1 v1) 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 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')
RecordLabels r' ls => RecordLabels (HCons (LVPair l v) r') (HCons l ls)
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)
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))
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'')
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''
class HNat n => HLookupByHNat n l e | n l -> e whereSource
Methods
hLookupByHNat :: n -> l -> eSource
show/hide Instances
HLookupByHNat HZero (HCons e l) e
HLookupByHNat HZero (HCons e l) e
(HLookupByHNat n l e', HNat n) => HLookupByHNat (HSucc n) (HCons e l) e'
(HLookupByHNat n l e', HNat n) => HLookupByHNat (HSucc n) (HCons e l) e'
class HNat n => HDeleteAtHNat n l l' | n l -> l' whereSource
Methods
hDeleteAtHNat :: n -> l -> l'Source
show/hide Instances
HDeleteAtHNat HZero (HCons e l) l
HDeleteAtHNat HZero (HCons e l) l
(HDeleteAtHNat n l l', HNat n) => HDeleteAtHNat (HSucc n) (HCons e l) (HCons e l')
(HDeleteAtHNat n l l', HNat n) => HDeleteAtHNat (HSucc n) (HCons e l) (HCons e l')
class HNat n => HUpdateAtHNat n e l l' | n e l -> l', l' n -> e whereSource
Methods
hUpdateAtHNat :: n -> e -> l -> l'Source
show/hide Instances
HUpdateAtHNat HZero e' (HCons e l) (HCons e' l)
HUpdateAtHNat HZero e' (HCons e l) (HCons e' l)
(HUpdateAtHNat n e' l l', HNat n) => HUpdateAtHNat (HSucc n) e' (HCons e l) (HCons e l')
(HUpdateAtHNat n e' l l', HNat n) => HUpdateAtHNat (HSucc n) e' (HCons e l) (HCons e l')
hSplitByHNats :: (HSplitByHNats' ns l' l'1 l'', HMap (HAddTag HTrue) l l') => ns -> l -> (l'1, l'')Source
class HNats ns => HSplitByHNats' ns l l' l'' | ns l -> l' l'' whereSource
Methods
hSplitByHNats' :: ns -> l -> (l', l'')Source
show/hide Instances
HSplit l l' l'' => HSplitByHNats' HNil l HNil l'
(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''
class HNats ns => HProjectByHNats ns l l' | ns l -> l' whereSource
Methods
hProjectByHNats :: ns -> l -> l'Source
show/hide Instances
class HProjectAwayByHNats ns l l' | ns l -> l' whereSource
Methods
hProjectAwayByHNats :: ns -> l -> l'Source
class HBetween x y | x -> y whereSource
Methods
hBetween :: x -> ySource
show/hide Instances
class HDiff x y z | x y -> z whereSource
Methods
hDiff :: x -> y -> zSource
show/hide Instances
HDiff HNil x HNil
(HOrdMember e y b, HDiff x y z, HCond b z (HCons e z) z') => HDiff (HCons e x) y z'
class HOrdMember e l b | e l -> b whereSource
Methods
hOrdMember :: e -> l -> bSource
show/hide Instances
HOrdMember e HNil HFalse
HOrdMember e HNil HFalse
(HEq e e' b1, HOrdMember e l b2, HOr b1 b2 b) => HOrdMember e (HCons e' l) b
class (HList l, HNat n) => HLength l n | l -> nSource
show/hide Instances
hLength :: HLength l n => l -> nSource
class HMaxLength l s Source
class HMinLength l s Source
class HSingleton l Source
hSingle :: (HSingleton l, HHead l e) => l -> eSource
class HOccursMany e l whereSource
Methods
hOccursMany :: l -> [e]Source
show/hide Instances
class HOccursMany1 e l whereSource
Methods
hOccursMany1 :: l -> (e, [e])Source
show/hide Instances
class HOccursFst e l whereSource
Methods
hOccursFst :: l -> eSource
show/hide Instances
HOccursFst e l => HOccursFst e (TIP l)
(HOccursFst e l, HList l) => HOccursFst e (HCons e' l)
HList l => HOccursFst e (HCons e l)
class HOccurs e l whereSource
Methods
hOccurs :: l -> eSource
show/hide Instances
Fail (TypeNotFound e) => HOccurs e HNil
HOccurs e (HCons x (HCons y l)) => HOccurs e (TIP (HCons x (HCons y l)))
TypeCast e' e => HOccurs e (TIP (HCons e' HNil))
(HOccurs e l, HList l) => HOccurs e (HCons e' l)
(HList l, HOccursNot e l) => HOccurs e (HCons e l)
data TypeNotFound e Source
class HOccurs' e l whereSource
Methods
hOccurs' :: l -> eSource
show/hide Instances
(TypeEq e e' b, HOccursBool b e (HCons e' l)) => HOccurs' e (HCons e' l)
class HOccursBool b e l whereSource
Methods
hOccursBool :: b -> l -> eSource
show/hide Instances
(HOccurs' e l, HList l) => HOccursBool HFalse e (HCons e' l)
(HOccurs' e l, HList l) => HOccursBool HFalse e (HCons e' l)
(HList l, HOccursNot e l) => HOccursBool HTrue e (HCons e l)
(HList l, HOccursNot e l) => HOccursBool HTrue e (HCons e l)
class HOccursOpt e l whereSource
Methods
hOccursOpt :: l -> Maybe eSource
show/hide Instances
data TypeFound e Source
class HOccursNot e l Source
show/hide Instances
class HProject l l' whereSource
Methods
hProject :: l -> l'Source
show/hide Instances
HProject l HNil
(HList l', HOccurs e l, HProject l l') => HProject l (HCons e l')
class HDeleteMany e l l' | e l -> l' whereSource
Methods
hDeleteMany :: Proxy e -> l -> l'Source
show/hide Instances
HDeleteMany e HNil HNil
(HList l, TypeEq e e' b, HDeleteManyCase b e e' l l') => HDeleteMany e (HCons e' l) l'
class HDeleteManyCase b e e' l l' | b e e' l -> l' whereSource
Methods
hDeleteManyCase :: b -> Proxy e -> e' -> l -> l'Source
show/hide Instances
HDeleteMany e l l' => HDeleteManyCase HTrue e e l l'
HDeleteMany e l l' => HDeleteManyCase HFalse e e' l (HCons e' l')
HDeleteMany e l l' => HDeleteManyCase HFalse e e' l (HCons e' l')
class HNat n => HType2HNat e l n | e l -> nSource
show/hide Instances
(TypeEq e' e b, HType2HNatCase b e l n) => HType2HNat e (HCons e' l) n
class (HBool b, HNat n) => HType2HNatCase b e l n | b e l -> nSource
show/hide Instances
hType2HNat :: HType2HNat e l n => Proxy e -> l -> nSource
class HTypes2HNats ps l ns | ps l -> ns whereSource
Methods
hTypes2HNats :: ps -> l -> nsSource
show/hide Instances
HTypes2HNats HNil l HNil
(HType2HNat e l n, HTypes2HNats ps l ns) => HTypes2HNats (HCons (Proxy e) ps) l (HCons n ns)
hDeleteAtProxy :: (HDeleteAtHNat n l l', HType2HNat e l n) => Proxy e -> l -> l'Source
hUpdateAtType :: (HUpdateAtHNat n e l l', HType2HNat e l n) => e -> l -> l'Source
hProjectByProxies :: (HProjectByHNats ns l l', HTypes2HNats ps l ns) => ps -> l -> l'Source
hSplitByProxies :: (HMap (HAddTag HTrue) l l', HSplitByHNats' ns l' l'1 l'', HTypes2HNats ps l ns) => ps -> l -> (l'1, l'')Source
newtype TIP l Source
Constructors
TIP l
show/hide Instances
HOccursNot e l => HOccursNot e (TIP l)
HOccursOpt e l => HOccursOpt e (TIP l)
HOccurs e (HCons x (HCons y l)) => HOccurs e (TIP (HCons x (HCons y l)))
TypeCast e' e => HOccurs e (TIP (HCons e' HNil))
HOccursFst e l => HOccursFst e (TIP l)
HOccursMany1 e l => HOccursMany1 e (TIP l)
HOccursMany e l => HOccursMany e (TIP l)
(HOccursNot e l, HTypeIndexed l) => HExtend e (TIP l) (TIP (HCons e l))
Read l => Read (TIP l)
Show l => Show (TIP l)
(HOccurs e l, SubType (TIP l) (TIP l')) => SubType (TIP l) (TIP (HCons e l'))
SubType (TIP l) (TIP HNil)
(HAppend l l' l'', HTypeIndexed l'') => HAppend (TIP l) (TIP l') (TIP l'')
mkTIP :: HTypeIndexed l => l -> TIP lSource
unTIP :: TIP l -> lSource
emptyTIP :: TIP HNilSource
class HList l => HTypeIndexed l Source
show/hide Instances
hExtend' :: (HTypeIndexed t, HOccursNot e t) => e -> TIP t -> TIP (HCons e t)Source
onTIP :: HTypeIndexed a => (b -> a) -> TIP b -> TIP aSource
tipyDelete :: (HTypeIndexed l', HType2HNat e b n, HDeleteAtHNat n b l') => Proxy e -> TIP b -> TIP l'Source
tipyUpdate :: (HTypeIndexed l', HType2HNat e b n, HUpdateAtHNat n e b l') => e -> TIP b -> TIP l'Source
tipyProject :: (HTypeIndexed l', HTypes2HNats ps b ns, HProjectByHNats ns b l') => ps -> TIP b -> TIP l'Source
tipySplit :: (HTypeIndexed t2, HTypeIndexed t1, HTypes2HNats ps t ns, HSplitByHNats' ns l' t1 t2, HMap (HAddTag HTrue) t l') => ps -> TIP t -> (TIP t1, TIP t2)Source
tuple :: (HOccurs e1 (TIP l), HType2HNat e1 l n, HDeleteAtHNat n l l', HOccurs e2 (TIP l'), HOccurs e2 (TIP l), HType2HNat e2 l n', HDeleteAtHNat n' l l'', HOccurs e1 (TIP l'')) => TIP l -> (e1, e2)Source
oneTrue :: TIP (HCons Int (HCons Bool HNil))Source
data TIC l Source
Constructors
TIC Dynamic
show/hide Instances
Show (TIC l)
mkTIC :: (HTypeIndexed l, HTypeProxied l, HOccurs (Proxy i) l, Typeable i) => i -> TIC lSource
unTIC :: (HTypeIndexed l, HTypeProxied l, HOccurs (Proxy o) l, Typeable o) => TIC l -> Maybe oSource
class HTypeProxied l Source
show/hide Instances
class HZippable x y Source
show/hide Instances
class HZip x y l | x y -> l, l -> x y whereSource
Methods
hZip :: x -> y -> lSource
hUnzip :: l -> (x, y)Source
show/hide Instances
HZip HNil HNil HNil
HZip tx ty l => HZip (HCons hx tx) (HCons hy ty) (HCons ((,) hx hy) l)
newtype LVPair l v Source
Constructors
LVPair
valueLVPair :: v
show/hide Instances
(UnionSymRec r1 r2' (Record ru), HasField l2 ru v2, HUpdateAtHNat n (LVPair l2 v2) ru ru, RecordLabels ru ls, HFind l2 ls n) => UnionSymRec' HTrue r1 (LVPair l2 v2) r2' (Record ru)
(Typeable x, Typeable y) => Typeable (LVPair x y)
HRLabelSet (HCons (LVPair l v) r) => HExtend (LVPair l v) (Record r) (Record (HCons (LVPair l v) r))
labelLVPair :: LVPair l v -> lSource
newLVPair :: l -> v -> LVPair l vSource
newtype Record r Source
Constructors
Record r
show/hide Instances
(UnionSymRec r1 r2' (Record ru), HExtend f2 (Record ru) (Record (HCons f2 ru))) => UnionSymRec' HFalse r1 f2 r2' (Record (HCons f2 ru))
(UnionSymRec r1 r2' (Record ru), HasField l2 ru v2, HUpdateAtHNat n (LVPair l2 v2) ru ru, RecordLabels ru ls, HFind l2 ls n) => UnionSymRec' HTrue r1 (LVPair l2 v2) r2' (Record ru)
UnionSymRec r1 (Record HNil) r1
HLeftUnion r (Record HNil) r
HasField l r v => HasField l (Record r) v
ShowComponents r => Show (Record r)
Typeable x => Typeable (Record x)
(RecordLabels r' ls, H2ProjectByLabels ls r r' rout) => SubType (Record r) (Record r')
(RecordLabels r1 ls, HMember l ls b, UnionSymRec' b (Record r1) (LVPair l v) (Record r2') ru) => UnionSymRec (Record r1) (Record (HCons (LVPair l v) r2')) ru
(RecordLabels r ls, HMember l ls b, HLeftUnionBool b r (LVPair l v) r''', HLeftUnion (Record r''') (Record r') r'') => HLeftUnion (Record r) (Record (HCons (LVPair l v) r')) r''
(HRLabelSet r'', HAppend r r' r'') => HAppend (Record r) (Record r') (Record r'')
(RecordLabels a la, RecordLabels b lb, HTIntersect la lb lc, H2ProjectByLabels lc a c aout, H2ProjectByLabels lc b c bout, HRLabelSet c) => LubNarrow (Record a) (Record b) (Record c)
HRLabelSet (HCons (LVPair l v) r) => HExtend (LVPair l v) (Record r) (Record (HCons (LVPair l v) r))
mkRecord :: HRLabelSet r => r -> Record rSource
emptyRecord :: Record HNilSource
class HRLabelSet ps Source
show/hide Instances
HRLabelSet HNil
HRLabelSet (HCons x HNil)
(HEq l1 l2 HFalse, HRLabelSet (HCons (LVPair l2 v2) r), HRLabelSet (HCons (LVPair l1 v1) r)) => HRLabelSet (HCons (LVPair l1 v1) (HCons (LVPair l2 v2) r))
class HLabelSet ls Source
show/hide Instances
class RecordLabels r ls | r -> lsSource
show/hide Instances
recordLabels :: RecordLabels r ls => r -> lsSource
class ShowComponents l whereSource
Methods
showComponents :: String -> l -> StringSource
show/hide Instances
class ShowLabel l whereSource
Methods
showLabel :: l -> StringSource
show/hide Instances
class HasField l r v | l r -> v whereSource
Methods
hLookupByLabel :: l -> r -> vSource
show/hide Instances
HasField l r v => HasField l (Record r) v
(HEq l l' b, HasField' b l (HCons (LVPair l' v') r) v) => HasField l (HCons (LVPair l' v') r) v
class HasField' b l r v | b l r -> v whereSource
Methods
hLookupByLabel' :: b -> l -> r -> vSource
show/hide Instances
HasField l r v => HasField' HFalse l (HCons fld r) v
HasField l r v => HasField' HFalse l (HCons fld r) v
HasField' HTrue l (HCons (LVPair l v) r) v
HasField' HTrue l (HCons (LVPair l v) r) v
hDeleteAtLabel :: H2ProjectByLabels (HCons e HNil) t t1 t2 => e -> Record t -> Record t2Source
hUpdateAtLabel :: (RecordLabels t ls, HFind e ls n, HUpdateAtHNat n (LVPair e v) t l') => e -> v -> Record t -> Record l'Source
hProjectByLabels :: (HRLabelSet a, H2ProjectByLabels ls t a b) => ls -> Record t -> Record aSource
hProjectByLabels2 :: (HRLabelSet t2, HRLabelSet t1, H2ProjectByLabels ls t t1 t2) => ls -> Record t -> (Record t1, Record t2)Source
class H2ProjectByLabels ls r rin rout | ls r -> rin rout whereSource
Methods
h2projectByLabels :: ls -> r -> (rin, rout)Source
show/hide Instances
class H2ProjectByLabels' b ls r rin rout | b ls r -> rin rout whereSource
Methods
h2projectByLabels' :: b -> ls -> r -> (rin, rout)Source
show/hide Instances
H2ProjectByLabels ls r' rin rout => H2ProjectByLabels' HNothing ls (HCons f' r') rin (HCons f' rout)
H2ProjectByLabels ls r' rin rout => H2ProjectByLabels' HNothing ls (HCons f' r') rin (HCons f' rout)
H2ProjectByLabels ls' r' rin rout => H2ProjectByLabels' (HJust ls') ls (HCons f' r') (HCons f' rin) rout
H2ProjectByLabels ls' r' rin rout => H2ProjectByLabels' (HJust ls') ls (HCons f' r') (HCons f' rin) rout
hRenameLabel :: (H2ProjectByLabels (HCons e HNil) t t1 t2, HasField e t v, HRLabelSet (HCons (LVPair l v) t2)) => e -> l -> Record t -> Record (HCons (LVPair l v) t2)Source
hTPupdateAtLabel :: (HUpdateAtHNat n (LVPair l a) t l', HFind l ls n, RecordLabels t ls, HasField l t a) => l -> a -> Record t -> Record l'Source
class HLeftUnion r r' r'' | r r' -> r'' whereSource
Methods
hLeftUnion :: r -> r' -> r''Source
show/hide Instances
HLeftUnion r (Record HNil) r
(RecordLabels r ls, HMember l ls b, HLeftUnionBool b r (LVPair l v) r''', HLeftUnion (Record r''') (Record r') r'') => HLeftUnion (Record r) (Record (HCons (LVPair l v) r')) r''
class HLeftUnionBool b r f r' | b r f -> r' whereSource
Methods
hLeftUnionBool :: b -> r -> f -> r'Source
show/hide Instances
class UnionSymRec r1 r2 ru | r1 r2 -> ru whereSource
Methods
unionSR :: r1 -> r2 -> (ru, ru)Source
show/hide Instances
UnionSymRec r1 (Record HNil) r1
(RecordLabels r1 ls, HMember l ls b, UnionSymRec' b (Record r1) (LVPair l v) (Record r2') ru) => UnionSymRec (Record r1) (Record (HCons (LVPair l v) r2')) ru
class UnionSymRec' b r1 f2 r2' ru | b r1 f2 r2' -> ru whereSource
Methods
unionSR' :: b -> r1 -> f2 -> r2' -> (ru, ru)Source
show/hide Instances
(UnionSymRec r1 r2' (Record ru), HExtend f2 (Record ru) (Record (HCons f2 ru))) => UnionSymRec' HFalse r1 f2 r2' (Record (HCons f2 ru))
(UnionSymRec r1 r2' (Record ru), HExtend f2 (Record ru) (Record (HCons f2 ru))) => UnionSymRec' HFalse r1 f2 r2' (Record (HCons f2 ru))
(UnionSymRec r1 r2' (Record ru), HasField l2 ru v2, HUpdateAtHNat n (LVPair l2 v2) ru ru, RecordLabels ru ls, HFind l2 ls n) => UnionSymRec' HTrue r1 (LVPair l2 v2) r2' (Record ru)
(UnionSymRec r1 r2' (Record ru), HasField l2 ru v2, HUpdateAtHNat n (LVPair l2 v2) ru ru, RecordLabels ru ls, HFind l2 ls n) => UnionSymRec' HTrue r1 (LVPair l2 v2) r2' (Record ru)
(UnionSymRec r1 r2' (Record ru), HasField l2 ru v2, HUpdateAtHNat n (LVPair l2 v2) ru ru, RecordLabels ru ls, HFind l2 ls n) => UnionSymRec' HTrue r1 (LVPair l2 v2) r2' (Record ru)
newtype Variant mr Source
Constructors
Variant mr
show/hide Instances
class HMaybied r r' | r -> r' whereSource
Methods
hMaybied :: r -> r'Source
show/hide Instances
mkVariant :: (RecordLabels v ls, HFind x ls n, HMaybied v v', HUpdateAtHNat n (LVPair x (Maybe y)) v' v') => x -> y -> Record v -> Variant v'Source
unVariant :: (RecordLabels v ls, HFind x ls n, HLookupByHNat n v (LVPair x (Maybe y))) => x -> Variant v -> Maybe ySource
type :*: e l = HCons e lSource
(.*.) :: HExtend e l l' => e -> l -> l'Source
type :=: l v = LVPair l vSource
(.=.) :: l -> v -> LVPair l vSource
(.!.) :: HasField l r v => r -> l -> vSource
(.-.) :: H2ProjectByLabels (HCons e HNil) t t1 t2 => Record t -> e -> Record t2Source
(.@.) :: (HUpdateAtHNat n (LVPair t t1) t2 l', HFind t ls n, RecordLabels t2 ls) => Record t2 -> LVPair t t1 -> Record l'Source
(.^.) :: (HasField t t2 (Proxy t1), RecordLabels t2 ls, HFind t ls n, HUpdateAtHNat n (LVPair t t1) t2 l') => LVPair t t1 -> Record t2 -> Record l'Source
(.<.) :: (HasField t t2 t1, RecordLabels t2 ls, HFind t ls n, HUpdateAtHNat n (LVPair t t1) t2 l') => LVPair t t1 -> Record t2 -> Record l'Source
(.<++.) :: HLeftUnion r r' r'' => r -> r' -> r''Source
type :+: e l = HCons (Proxy e) lSource
(.+.) :: (HTypeIndexed l, HTypeProxied l, HOccursNot (Proxy e) l) => e -> TIP l -> TIP (HCons (Proxy e) l)Source
hUnproxyLabel :: (HUpdateAtHNat n (LVPair l a) t l', HFind l ls n, RecordLabels t ls, HasField l t (Proxy a)) => l -> a -> Record t -> Record l'Source
hasNoProxies :: HasNoProxies r => Record r -> ()Source
data ProxyFound x Source
class HasNoProxies l Source
show/hide Instances
class NarrowM a b res | a b -> res whereSource
Methods
narrowM :: Record a -> Record b -> resSource
show/hide Instances
NarrowM a HNil (HJust (Record HNil))
NarrowM a HNil (HJust (Record HNil))
(H2ProjectByLabels (HCons l HNil) a rin rout, NarrowM' rin rout b res) => NarrowM a (HCons (LVPair l v) b) res
class NarrowM' rin rout b res | rin rout b -> res whereSource
Methods
narrowM' :: rin -> rout -> b -> resSource
show/hide Instances
NarrowM' HNil rout b HNothing
NarrowM' HNil rout b HNothing
(NarrowM rout b res', NarrowM'' f res' res) => NarrowM' (HCons f HNil) rout b res
class NarrowM'' f r r' | f r -> r' whereSource
Methods
narrowM'' :: f -> r -> r'Source
show/hide Instances
class Narrow a b whereSource
Methods
narrow :: Record a -> Record bSource
show/hide Instances
Narrow a HNil
(Narrow rout r', H2ProjectByLabels (HCons l HNil) r (HCons (LVPair l v) HNil) rout) => Narrow r (HCons (LVPair l v) r')
class LubNarrow a b c | a b -> c whereSource
Methods
lubNarrow :: a -> b -> (c, c)Source
show/hide Instances
(RecordLabels a la, RecordLabels b lb, HTIntersect la lb lc, H2ProjectByLabels lc a c aout, H2ProjectByLabels lc b c bout, HRLabelSet c) => LubNarrow (Record a) (Record b) (Record c)
data NilLub Source
show/hide Instances
ConsLub e NilLub ([] e)
nilLub :: NilLubSource
class ConsLub h t l | h t -> l whereSource
Methods
consLub :: h -> t -> lSource
show/hide Instances
ConsLub e NilLub ([] e)
ConsLub e NilLub ([] e)
LubNarrow e0 e1 e2 => ConsLub e0 ([] e1) ([] e2)
class HLub l e | l -> e whereSource
Methods
hLub :: l -> [e]Source
show/hide Instances
(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
class RecordEquiv r1 r2 res | r1 r2 -> res whereSource
Methods
equivR :: Record r1 -> Record r2 -> resSource
class RecordEquiv' pj1 pj2 res | pj1 pj2 -> res whereSource
Methods
equivR' :: pj1 -> pj2 -> resSource
show/hide Instances
RecordEquiv' (r1 -> HNothing) pj2 HNothing
RecordEquiv' (r1 -> HNothing) pj2 HNothing
RecordEquiv' (r1 -> HJust r2) (r2 -> HNothing) HNothing
RecordEquiv' (r1 -> HJust r2) (r2 -> HNothing) HNothing
RecordEquiv' (r1 -> HJust r2) (r2 -> HJust r1) (HJust ((,) (r1 -> r2) (r2 -> r1)))
RecordEquiv' (r1 -> HJust r2) (r2 -> HJust r1) (HJust ((,) (r1 -> r2) (r2 -> r1)))
hNilTcName :: TyConSource
hConsTcName :: TyConSource
recordTcName :: TyConSource
hFieldTcName :: TyConSource
proxyTcName :: TyConSource
class HDeleteMany e l l' | e l -> l' whereSource
Methods
hDeleteMany :: Proxy e -> l -> l'Source
show/hide Instances
HDeleteMany e HNil HNil
(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'
class IsTC1 x f b | x f -> bSource
class IsTC2 x f b | x f -> bSource
funType :: IsTC2 t (->) b => t -> bSource
module Data.STRef
module Data.IORef
module Data.Typeable
module Control.Monad
module Control.Monad.ST
module Control.Monad.Fix
module GHC.IOBase
concrete :: MonadFix m => (a -> m a) -> a -> m aSource
(#) :: HasField l r v => r -> l -> vSource
Produced by Haddock version 2.4.2