purs(hs)class Union (left :: # Type) (right :: # Type) (union :: # Type)
| left right -> union, right union -> left, union left -> right
purs(hs)class Union (left :: Row k) (right :: Row k) (union :: Row k) | left right -> union, right union -> left, union left -> right
purs(hs)union :: forall r1 r2 r3. Union r1 r2 r3 => { | r1 } -> { | r2 } -> { | r3 }
union { x: 1, y: "y" } { y: 2, z: true }
:: { x :: Int, y :: String, y :: Int, z :: Boolean }