! \brief construct an optional object that contains no value */
| 44 | public: |
| 45 | /*! \brief construct an optional object that contains no value */ |
| 46 | optional() : is_none(true) {} |
| 47 | /*! \brief construct an optional object with value */ |
| 48 | explicit optional(const T& value) { |
| 49 | #pragma GCC diagnostic push |