FsCodec icon indicating copy to clipboard operation
FsCodec copied to clipboard

feat(UnionConverter): Support upconvert from string to nullary case

Open bartelink opened this issue 1 year ago • 0 comments

Support upconversion from a representation of an event starts with TypeSafeEnumConverter for a given union (and hence has a string value), being able to implicitly upconvert from that if the internal representation adds a non-nullary case (and hence switches to using UnionConverter).

Of course, in general one should have a clear picture of whether something is an enum or a full state with data per case. The point here is to be able to represent data that's specific to a case without that having to stuff it into adjacent optional fields with conditional logic defining when the field should be present etc.

#97 is slightly related, but is going the other direction, and is recovering from a missing converter rather than a natural evolution

bartelink avatar Feb 23 '24 09:02 bartelink