2 namespace SIMDJSON_IMPLEMENTATION {
12 value = std::forward<implementation_simdjson_result_base<T>>(*this).first;
19 std::forward<implementation_simdjson_result_base<T>>(*this).tie(value, error);
28 #if SIMDJSON_EXCEPTIONS
38 return std::forward<implementation_simdjson_result_base<T>>(*this).take_value();
44 return std::forward<T>(this->first);
49 return std::forward<implementation_simdjson_result_base<T>>(*this).
take_value();
66 return std::forward<T>(this->first);
71 : first{std::forward<T>(value)}, second{error} {}
We want to support argument-dependent lookup (ADL).
error_code
All possible errors returned by simdjson.
The result of a simdjson operation that could fail.
simdjson_inline implementation_simdjson_result_base() noexcept=default
Create a new empty result with error = UNINITIALIZED.
simdjson_inline error_code error() const noexcept
The error.
simdjson_inline T & value() &noexcept(false)
Get the result value.
simdjson_inline const T & value_unsafe() const &noexcept
Get the result value.
simdjson_inline error_code get(T &value) &&noexcept
Move the value to the provided variable.
simdjson_inline void tie(T &value, error_code &error) &&noexcept
Move the value and the error to the provided variables.
simdjson_inline T && take_value() &&noexcept(false)
Take the result value (move it).
Exception thrown when an exception-supporting simdjson method is called.