Module

Record.Extra

#mapRecord

mapRecord :: forall row xs a b row'. RowToList row xs => MapRecord xs row a b () row' => (a -> b) -> Record row -> Record row'

#MapRecord

class MapRecord (xs :: RowList Type) (row :: Row Type) a b (from :: Row Type) (to :: Row Type) | xs -> row a b from to where

Members

Instances

#ZipRecord

class ZipRecord (rla :: RowList Type) (ra :: Row Type) (rlb :: RowList Type) (rb :: Row Type) (from :: Row Type) (to :: Row Type) | rla -> ra from to, rlb -> rb from to where

Members

Instances

#zipRecord

zipRecord :: forall ta ra tb rb rc. RowToList ra ta => RowToList rb tb => ZipRecord ta ra tb rb () rc => Record ra -> Record rb -> Record rc

#Keys

class Keys (xs :: RowList Type)  where

Members

Instances

#keys

keys :: forall g row rl. RowToList row rl => Keys rl => g row -> List String

#pickFn

pickFn :: forall r1 r2. Fn2 (Array String) (Record r1) (Record r2)

#pick

pick :: forall a r b l. Union b r a => RowToList b l => Keys l => Record a -> Record b

#slistKeys

slistKeys :: forall g tuples rl. SListToRowList tuples rl => Keys rl => g tuples -> List String

#SList

data SList

#SCons

data SCons :: Symbol -> SList -> SList

Instances

#SNil

data SNil :: SList

Instances

#type (:::)

Operator alias for Record.Extra.SCons (right-associative / precedence 6)

#SListToRowList

class SListToRowList (xs :: SList) (rl :: RowList Type) | xs -> rl, rl -> xs

Instances

#OrdRecord

class OrdRecord (rl :: RowList Type) row | rl -> row where

Members

Instances

#compareRecord

compareRecord :: forall row rl. RowToList row rl => OrdRecord rl row => Record row -> Record row -> Ordering

#SequenceRecord

class (Functor m) <= SequenceRecord (rl :: RowList Type) row from to m | rl -> row from to m where

Members

Instances

#sequenceRecord

sequenceRecord :: forall row row' rl m. RowToList row rl => SequenceRecord rl row () row' m => Record row -> m (Record row')

Modules