39 explicit Option(T&& data)
44 explicit Option(
const T& data)
49 template<
class... Args>
50 Option(Args&&... args)
59 throw std::runtime_error(
"none option value");
62 return std::move(m_data);
67 return std::move(def);
70 return std::move(m_data);
76 constexpr explicit operator bool()
const
78 constexpr bool has_value()
const