I have read that Option<NonZeroUsize> occupies exactly one word of memory, like usize.
I would like to combine this with the new type idiom. I would like to define struct Pos(NonZeroUsize), so that the compiler prevents me from confusing a Pos with any other NonZeroUsize, but without losing the compact representation.
Will Option<Pos> occupy exactly one word of memory?