Closed jacobp100 closed 1 month ago
Since the new ReScript allows spreading variants in the definitions, should we also be able to match them like polymorphic variants?
type ex1A = [#X | #Y] type ex1B = [#Z] type ex1 = [ex1A | ex1B] let ex1 = (x: ex1) => switch x { | #...ex1A => "A" | #...ex1B => "B" }
type ex2A = X | Y type ex2B = Z type ex2 = | ...ex2A | ...ex2B let ex2 = (x: ex2) => switch x { | _ => "???" }
It'd definitely be great. Related: https://github.com/rescript-lang/rescript-compiler/discussions/6273#discussioncomment-6645282
Since the new ReScript allows spreading variants in the definitions, should we also be able to match them like polymorphic variants?
Polymorphic variants
Variants with spread