Lines Matching refs:Storage
29 optional_detail::OptionalStorage<T> Storage;
37 constexpr CustomizableOptional(const T &y) : Storage(std::in_place, y) {}
41 : Storage(std::in_place, std::move(y)) {}
46 : Storage(std::in_place, std::forward<ArgTypes>(Args)...) {}
55 Storage = std::move(y);
62 Storage.emplace(std::forward<ArgTypes>(Args)...);
66 Storage = y;
71 void reset() { Storage.reset(); }
74 constexpr const T *getPointer() const { return &Storage.value(); }
76 T *getPointer() { return &Storage.value(); }
78 constexpr const T &value() const & { return Storage.value(); }
80 T &value() & { return Storage.value(); }
83 constexpr bool has_value() const { return Storage.has_value(); }
84 constexpr const T *operator->() const { return &Storage.value(); }
85 T *operator->() { return &Storage.value(); }
86 constexpr const T &operator*() const & { return Storage.value(); }
87 T &operator*() & { return Storage.value(); }
94 T &&value() && { return std::move(Storage.value()); }
95 T &&operator*() && { return std::move(Storage.value()); }