Module

Type.RowList

Package
purescript-typelevel-prelude
Repository
purescript/purescript-typelevel-prelude

#ListToRow Source

class ListToRow list row | list -> row

Instances

#RowListRemove Source

class RowListRemove label input output | label input -> output

Instances

#RowListSet Source

class RowListSet label typ input output | label typ input -> output

Instances

#RowListNub Source

class RowListNub input output | input -> output

Instances

#RowListAppend Source

class RowListAppend lhs rhs out | lhs rhs -> out

Instances

Re-exports from Prim.RowList

#RowList

data RowList :: Type -> Type

A type level list representation of a row of types.

#Nil

data Nil :: forall (k :: Type). RowList k

The empty RowList.

#Cons

data Cons :: forall (k :: Type). Symbol -> k -> RowList k -> RowList k

Constructs a new RowList from a label, a type, and an existing tail RowList. E.g: Cons "x" Int (Cons "y" Int Nil).

#RowToList

class RowToList (row :: Row k) (list :: RowList k) | row -> list

Compiler solved type class for generating a RowList from a closed row of types. Entries are sorted by label and duplicates are preserved in the order they appeared in the row.

Re-exports from Type.Data.RowList

#RLProxy Source

data RLProxy rowlist

Constructors