namespace Rice::detail { inline VALUE Rice::detail::DefaultExceptionHandler::handle() const { throw; } template inline Rice::detail::CustomExceptionHandler:: CustomExceptionHandler(Functor_T handler, std::shared_ptr nextHandler) : handler_(handler), nextHandler_(nextHandler) { } template inline VALUE Rice::detail::CustomExceptionHandler::handle() const { try { return this->nextHandler_->handle(); } catch (Exception_T const& ex) { handler_(ex); throw; } } }