We’re changing functions in Base that used to use the polymorphic
[ `Fst of 'a | `Snd of 'b ] to use
('a, 'b) Either.t
instead. As well as enabling the use of all of the functions in the
Either module, this makes the functions consistent with other
functions that already use
Either.t, (currently just
The following functions’ types will change:
The type of
List.partition3_map will not change:
val partition3_map : 'a t -> f:('a -> [ `Fst of 'b | `Snd of 'c | `Trd of 'd ]) -> 'b t * 'c t * 'd t
We don’t have a generic ternary variant, and it doesn’t seem worth it
to mint one just for this purpose.
Since this change is pretty straightforward, we expect that a simple find/replace will be sufficient to update any affected call sites.