(no title)
lucian1900 | 4 years ago
https://github.com/BurntSushi/go-sumtype is great, but a bit unwieldy. Language support would be much better.
lucian1900 | 4 years ago
https://github.com/BurntSushi/go-sumtype is great, but a bit unwieldy. Language support would be much better.
catlifeonmars|4 years ago
func UnmarshalOneOf(data []byte, args []interface{}) (index int, err error)
Which I use like this:
variants := []interface{}{ &T1{}, &T2{}}
i, err := UnmarshalOneOf(data, variants)
// …
return variants[i]