Ideally we'd just do this when we need it, but the ostream derivation will be controlled by both global config and per-structure config, so it's hard to know exactly when we need it and when we don't.
Option<Box<T>>
*T
Co-Authored-by: Ivan Enderlin <ivan@mnt.io>