18 template <
typename ValueType,
typename ErrorType>
22 template <
typename AnyValue,
typename AnyError>
friend struct AsyncResult;
26 mutable std::shared_ptr<ValueType> m_value;
27 mutable std::shared_ptr<ErrorType> m_error;
30 AsyncResult (
bool isSuccess, std::shared_ptr<ValueType> value, std::shared_ptr<ErrorType> error) :
31 m_isSuccess (isSuccess),
43 template<
typename AnyValue>
67 m_value = std::make_shared<ValueType> (value);
76 m_error = std::make_shared<ErrorType> (error);
83 m_value = std::make_shared<ValueType> (value);
84 m_error = std::make_shared<ErrorType> (error);
97 m_value = std::make_shared<ValueType> ();
106 m_value = std::make_shared<ValueType> ();
115 m_error = std::make_shared<ErrorType> ();
124 m_error = std::make_shared<ErrorType> ();
133 template <
typename ErrorType>
137 template <
typename AnyValue,
typename AnyError>
friend struct AsyncResult;
141 mutable std::shared_ptr<ErrorType> m_error;
145 m_isSuccess (isSuccess),
156 template<
typename AnyValue>
182 m_error = std::make_shared<ErrorType> (error);
195 m_error = std::make_shared<ErrorType> ();
204 m_error = std::make_shared<ErrorType> ();
static AsyncResult< ValueType, ErrorType > Error(const ErrorType &error)
Definition: AsyncResult.h:49
const ErrorType & GetError() const
Definition: AsyncResult.h:120
AsyncResult()
Definition: AsyncResult.h:151
AsyncResult()
Definition: AsyncResult.h:38
static AsyncResult< ValueType, ErrorType > Error(const ErrorType &error, const ValueType &value)
Definition: AsyncResult.h:54
ErrorType & GetError()
Definition: AsyncResult.h:111
const ErrorType & GetError() const
Definition: AsyncResult.h:200
bool IsSuccess() const
Definition: AsyncResult.h:186
bool IsSuccess() const
Definition: AsyncResult.h:88
AsyncResult< void, ErrorType > & SetError(const ErrorType &error)
Definition: AsyncResult.h:179
#define BEGIN_BENTLEY_TASKS_NAMESPACE
Definition: Tasks.h:13
static AsyncResult< ValueType, ErrorType > Success(const ValueType &value)
Definition: AsyncResult.h:59
Class for returning success or Error from async operations.
Definition: AsyncResult.h:135
static AsyncResult< void, ErrorType > Success()
Definition: AsyncResult.h:167
AsyncResult(bool isSuccess, std::shared_ptr< ValueType > value, std::shared_ptr< ErrorType > error)
Definition: AsyncResult.h:30
static AsyncResult< void, ErrorType > Error(const ErrorType &error)
Definition: AsyncResult.h:162
const ValueType & GetValue() const
Definition: AsyncResult.h:102
AsyncResult< ValueType, ErrorType > & SetError(const ErrorType &error, const ValueType &value)
Definition: AsyncResult.h:80
AsyncResult< ValueType, ErrorType > & SetSuccess(const ValueType &value)
Definition: AsyncResult.h:64
AsyncResult(bool isSuccess, std::shared_ptr< ErrorType > error)
Definition: AsyncResult.h:144
static AsyncResult< void, ErrorType > Error(const AsyncResult< AnyValue, ErrorType > &error)
Definition: AsyncResult.h:157
ErrorType & GetError()
Definition: AsyncResult.h:191
AsyncResult< ValueType, ErrorType > & SetError(const ErrorType &error)
Definition: AsyncResult.h:72
ValueType & GetValue()
Definition: AsyncResult.h:93
#define END_BENTLEY_TASKS_NAMESPACE
Definition: Tasks.h:14
Class for returning success Value or Error from async operations.
Definition: AsyncResult.h:20
AsyncResult< void, ErrorType > & SetSuccess()
Definition: AsyncResult.h:172
static AsyncResult< ValueType, ErrorType > Error(const AsyncResult< AnyValue, ErrorType > &error)
Definition: AsyncResult.h:44