data-diverse-4.7.1.0: Extensible records and polymorphic variants.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Diverse.Reiterate

Synopsis

Documentation

class Reiterate c (xs :: [Type]) where Source #

Allows iterating over the types in a typelist

Methods

reiterate :: c xs -> c (Tail xs) Source #

Return the next iteration without the Head type x in (x ': xs)

Instances

Instances details
Reiterate (CaseFunc' k) xs Source # 
Instance details

Defined in Data.Diverse.CaseFunc

Methods

reiterate :: CaseFunc' k xs -> CaseFunc' k (Tail xs) Source #

Reiterate (CaseFunc k r) xs Source # 
Instance details

Defined in Data.Diverse.CaseFunc

Methods

reiterate :: CaseFunc k r xs -> CaseFunc k r (Tail xs) Source #

Reiterate (CaseIxedCont k r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedCont k r xs -> CaseIxedCont k r (Tail xs) Source #

Reiterate (CaseIxedFunc k r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFunc k r xs -> CaseIxedFunc k r (Tail xs) Source #

Reiterate (Cases fs r) xs Source # 
Instance details

Defined in Data.Diverse.Cases

Methods

reiterate :: Cases fs r xs -> Cases fs r (Tail xs) Source #

Reiterate (CaseFunc1' k k1 k0) xs Source # 
Instance details

Defined in Data.Diverse.CaseFunc

Methods

reiterate :: CaseFunc1' k k1 k0 xs -> CaseFunc1' k k1 k0 (Tail xs) Source #

Reiterate (CaseIxedCont_ k f r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedCont_ k f r xs -> CaseIxedCont_ k f r (Tail xs) Source #

Reiterate (CaseIxedFuncM k r m) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFuncM k r m xs -> CaseIxedFuncM k r m (Tail xs) Source #

Reiterate (CaseIxedFunc_ k f r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFunc_ k f r xs -> CaseIxedFunc_ k f r (Tail xs) Source #

Reiterate (CaseFunc1 k k1 k0 r) xs Source # 
Instance details

Defined in Data.Diverse.CaseFunc

Methods

reiterate :: CaseFunc1 k k1 k0 r xs -> CaseFunc1 k k1 k0 r (Tail xs) Source #

Reiterate (CaseIxedCont1 k k1 k0 r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedCont1 k k1 k0 r xs -> CaseIxedCont1 k k1 k0 r (Tail xs) Source #

Reiterate (CaseIxedFunc1 k k1 k0 r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFunc1 k k1 k0 r xs -> CaseIxedFunc1 k k1 k0 r (Tail xs) Source #

Reiterate (CaseIxedFuncM_ k f r m) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFuncM_ k f r m xs -> CaseIxedFuncM_ k f r m (Tail xs) Source #

Reiterate (CaseFunc1_ k k1 k0 r x) xs Source # 
Instance details

Defined in Data.Diverse.CaseFunc

Methods

reiterate :: CaseFunc1_ k k1 k0 r x xs -> CaseFunc1_ k k1 k0 r x (Tail xs) Source #

Reiterate (CaseIxedCont1_ k k1 k0 f r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedCont1_ k k1 k0 f r xs -> CaseIxedCont1_ k k1 k0 f r (Tail xs) Source #

Reiterate (CaseIxedFunc1_ k k1 k0 f r) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFunc1_ k k1 k0 f r xs -> CaseIxedFunc1_ k k1 k0 f r (Tail xs) Source #

Reiterate (CaseIxedFuncM1 k k1 k0 r m) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFuncM1 k k1 k0 r m xs -> CaseIxedFuncM1 k k1 k0 r m (Tail xs) Source #

Reiterate (CaseIxedFuncM1_ k k1 k0 f r m) xs Source # 
Instance details

Defined in Data.Diverse.CaseIxed

Methods

reiterate :: CaseIxedFuncM1_ k k1 k0 f r m xs -> CaseIxedFuncM1_ k k1 k0 f r m (Tail xs) Source #

class ReiterateN c (n :: Nat) (xs :: [Type]) where Source #

Allows iterating over the types in a typelist, whilst also incrementing an Nat index

Methods

reiterateN :: c n xs -> c (n + 1) (Tail xs) Source #

Return the next iteration without the Head type x in (x ': xs)

Instances

Instances details
ReiterateN (CasesN fs r) n xs Source # 
Instance details

Defined in Data.Diverse.Cases

Methods

reiterateN :: CasesN fs r n xs -> CasesN fs r (n + 1) (Tail xs) Source #