You can dereference it (*input2)  if it .has_value() is true).
As far as I can tell, these type of utility interfaces usually designed to be compatible with the usual (here  std::optional, interfaces) but is duplicated to avoid implementation quirks with older (?) c++ compilers.
Best regards
Thomas