36 constexpr
static bool empty =
false;
48 constexpr
explicit operator bool()
const {
return !
empty; }
83 class compile_time_optional<std::reference_wrapper<T>>
88 constexpr
static bool empty =
false;
90 constexpr
explicit operator bool()
const {
return !
empty; }
103 std::reference_wrapper<value_type> ref_;
107 class compile_time_optional<void>
110 constexpr
static bool empty =
true;
112 explicit constexpr
operator bool()
const {
return !
empty; }
116 template <
typename T =
void>
117 compile_time_optional() -> compile_time_optional<void>;
value_type & operator*() noexcept
constexpr const value_type & operator*() const noexcept
constexpr compile_time_optional(value_type val) noexcept
constexpr const value_type * operator->() const noexcept
value_type * operator->() noexcept
constexpr static bool empty