Module
Record.Studio.SameKeys
- Package
- purescript-record-studio
- Repository
- rowtype-yoga/purescript-record-studio
#SameKeysRL Source
class SameKeysRL :: RowList Type -> RowList Type -> Constraint
class SameKeysRL (xs :: RowList Type) (ys :: RowList Type)
Instances
SameKeysRL Nil Nil
(IsSymbol name, SameKeysRL tail1 tail2) => SameKeysRL (Cons name ty1 tail1) (Cons name ty2 tail2)
(ListToRow Nil r, Fail (Beside (Text "The key ") (Beside (Quote name) (Text " is missing from the second record")))) => SameKeysRL (Cons name ty tail) Nil
(ListToRow Nil r, Fail (Beside (Text "The key ") (Beside (Quote name) (Text " is missing from the first record")))) => SameKeysRL Nil (Cons name ty tail)
(ListToRow (Cons name2 ty1 tail1) r, Lacks name1 r, Fail (Beside (Text "The key ") (Beside (Quote name1) (Text " is missing from the second record")))) => SameKeysRL (Cons name1 ty1 tail1) (Cons name2 ty2 tail2)
(ListToRow (Cons name1 ty1 tail1) r, Lacks name2 r, Fail (Beside (Text "The key ") (Beside (Quote name2) (Text " is missing from the first record")))) => SameKeysRL (Cons name1 ty1 tail1) (Cons name2 ty2 tail2)