diff options
Diffstat (limited to 'forstio/async/async.h')
-rw-r--r-- | forstio/async/async.h | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/forstio/async/async.h b/forstio/async/async.h index 82eb2c1..4cfed60 100644 --- a/forstio/async/async.h +++ b/forstio/async/async.h @@ -63,7 +63,7 @@ public: error_or<own<conveyor_node>> swap_child_of_parent(own<conveyor_node> &&swapee) { SAW_ASSERT(parent) { - return critical_error( + return make_error<err::invalid_state>( "Can't swap child, because parent doesn't exist"); } @@ -737,21 +737,21 @@ public: try { eov = fix_void_caller<T, DepT>::apply( - func_, std::move(dep_eov.value())); + func_, std::move(dep_eov.get_value())); } catch (const std::bad_alloc &) { - eov = critical_error("Out of memory"); + eov = make_error<err::out_of_memory>("Out of memory"); } catch (const std::exception &) { - eov = critical_error( + eov = make_error<err::invalid_state>( "Exception in chain occured. Return ErrorOr<T> if you " "want to handle errors which are recoverable"); } } else if (dep_eov.is_error()) { - eov = error_func_(std::move(dep_eov.error())); + eov = error_func_(std::move(dep_eov.get_error())); } else { - eov = critical_error("No value set in dependency"); + eov = make_error<err::invalid_state>("No value set in dependency"); } } else { - eov = critical_error("Conveyor doesn't have child"); + eov = make_error<err::invalid_state>("Conveyor doesn't have child"); } } }; @@ -790,7 +790,7 @@ public: // ConveyorNode void get_result(error_or_value &err_or_val) noexcept override { err_or_val.as<void_t>() = - critical_error("In a sink node no result can be returned"); + make_error<err::invalid_state>("In a sink node no result can be returned"); } error_or<own<conveyor_node>> @@ -804,13 +804,13 @@ public: error_or<void> dep_eov; child_mixin_.child->get_result(dep_eov); if (dep_eov.is_error()) { - if (dep_eov.error().is_critical()) { + if (dep_eov.get_error().is_critical()) { if (!is_armed()) { arm_last(); } } if (conveyor_sink_) { - conveyor_sink_->fail(std::move(dep_eov.error())); + conveyor_sink_->fail(std::move(dep_eov.get_error())); } } } @@ -840,7 +840,7 @@ public: error_or<own<conveyor_node>> swap_child(own<conveyor_node> &&swapee) noexcept override { (void)swapee; - return recoverable_error("Node doesn't support swapping"); + return make_error<err::not_supported>("Node doesn't support swapping"); } conveyor_storage *next_storage() noexcept override { @@ -869,7 +869,7 @@ public: void get_result(error_or_value &err_or_val) noexcept override { if (retrieved_ > 0) { err_or_val.as<fix_void<T>>() = - make_error("Already taken value", error::code::Exhausted); + make_error<err::buffer_exhausted>("Already taken value"); } else { err_or_val.as<fix_void<T>>() = std::move(value_); } |