optional
optional copied to clipboard
How do I actually create bottom values?
It's not clear to me at all from the README or from the generated code, how to create the bottom value (or Nothing in Haskell parlance).
I have this generated code:
// OptionalFlavor is an optional Flavor.
type OptionalFlavor struct {
value *Flavor
}
// NewOptionalFlavor creates an optional.OptionalFlavor from a Flavor.
func NewOptionalFlavor(v Flavor) OptionalFlavor {
return OptionalFlavor{&v}
}
so if I have a Flavor I know how to get an OptionalFlavor. What I expected to find here was a nullary function that returns the Nothing case.
Perhaps I don't understand how this is supposed to work, or the README needs clarification.
Tangentially, being a sum type, I expected there to be a tag field in the generated struct. So I would like to know how the Nothing case is actually represented (Sorry, I'm new to golang).