Given the std::optional can contain an object type that heap allocates, we can use std::move to avoid an unnecessary copy/allocation from occurring.
Given the std::optional can contain an object type that heap allocates, we can use std::move to avoid an unnecessary copy/allocation from occurring.