MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ handle_async_error()

void MayaFlux::Yantra::ComputeMatrix::handle_async_error ( std::exception_ptr  ep)
inlineprivate

Routes an async chain's exception into the same reporting surface as a synchronous operation failure.

There is no single operation type to attribute the failure to here, since the exception may have escaped the chain itself rather than one operation's apply_operation_internal(). typeid(void) marks that absence, matching m_last_error_type's own default.

Definition at line 585 of file ComputeMatrix.hpp.

586 {
587 try {
588 std::rethrow_exception(std::move(ep));
589 } catch (const std::exception& e) {
590 handle_execution_error(e, typeid(void));
591 } catch (...) {
592 m_last_error = "async chain failed with unrecognized exception";
593 m_last_error_type = typeid(void);
594 }
595 }
void handle_execution_error(const std::exception &e, const std::type_index &op_type)
Handle execution errors.