Make a record of SProxy
of keys of a row type easily, and just plug in the inferred type when you're finished.
See test/Main.purs
test :: Unit
test = do
let
expected = Proxy :: Proxy (RProxy ( a :: SProxy "a", b :: SProxy "b", c :: SProxy "c" ))
actual = X.getKeysRow { a: 1, b: 2, c: 3 }
expectInferred expected actual
test2 :: Unit
test2 = do
let
expected = Proxy :: Proxy ({ a :: SProxy "a", b :: SProxy "b", c :: SProxy "c" })
actual = X.getKeysRecord { a: 1, b: 2, c: 3 }
expectInferred expected actual
test3 :: Unit
test3 = do
let
expected = Proxy :: Proxy ({ a :: SProxy "a", b :: SProxy "b", c :: SProxy "c" })
actual = X.getKeysRecord' (Proxy :: Proxy { a :: Int, b :: Int, c :: Int })
expectInferred expected actual