There are quite a few ways of creating single case discriminated unions in F# and this makes them popular for wrapping primatives. In this post, I will go through a number of the approaches that I have seen. The inspiration for this post is Twitter threads from the likes of @McCrews, @asp_net and @jordan_n_marr. It is in no way exhaustive but should give you plenty of ideas.
Basics
We start with a simple single case discriminated union: