Use our optional type for storing results of the future.
This commit is contained in:
parent
5eb7864928
commit
5aecd20c56
@ -34,21 +34,21 @@ namespace impl
|
|||||||
template<typename TValue>
|
template<typename TValue>
|
||||||
struct FutureStorage
|
struct FutureStorage
|
||||||
{
|
{
|
||||||
std::optional<TValue> value;
|
Optional<TValue> value;
|
||||||
|
|
||||||
void setValue(TValue value_) noexcept { value = std::move(value_); }
|
void setValue(TValue value_) noexcept { value = std::move(value_); }
|
||||||
[[nodiscard]] TValue& getValue() noexcept { return value.value(); }
|
[[nodiscard]] TValue& getValue() noexcept { return value.get(); }
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
template<typename TValue>
|
// template<typename TValue>
|
||||||
struct FutureStorage<TValue&>
|
// struct FutureStorage<TValue&>
|
||||||
{
|
// {
|
||||||
std::optional<TValue*> value;
|
// Optional<TValue*> value;
|
||||||
|
//
|
||||||
void setValue(TValue& value_) noexcept { value = &value_; }
|
// void setValue(TValue& value_) noexcept { value = &value_; }
|
||||||
[[nodiscard]] TValue& getValue() const noexcept { return *value.value(); }
|
// [[nodiscard]] TValue& getValue() const noexcept { return *value.get(); }
|
||||||
};
|
// };
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct FutureStorage<void>
|
struct FutureStorage<void>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user