std::optional
Adds and_then, transform and or_else to std::optional.
and_then
transform
or_else
optional