Sha256: 434e586b64835fb2eca157a9c76a917be2d9097a451bd2c41790418d34f09afd

Contents?: true

Size: 690 Bytes

Versions: 7

Compression:

Stored size: 690 Bytes

Contents

namespace Rice::detail
{
  inline VALUE Rice::detail::DefaultExceptionHandler::handle() const
  {
    throw;
  }

  template <typename Exception_T, typename Functor_T>
  inline Rice::detail::CustomExceptionHandler<Exception_T, Functor_T>::
    CustomExceptionHandler(Functor_T handler, std::shared_ptr<ExceptionHandler> nextHandler)
    : handler_(handler), nextHandler_(nextHandler)
  {
  }

  template <typename Exception_T, typename Functor_T>
  inline VALUE Rice::detail::CustomExceptionHandler<Exception_T, Functor_T>::handle() const
  {
    try
    {
      return this->nextHandler_->handle();
    }
    catch (Exception_T const& ex)
    {
      handler_(ex);
      throw;
    }
  }
}

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rice-4.3.3 rice/detail/ExceptionHandler.ipp
rice-4.3.2 rice/detail/ExceptionHandler.ipp
rice-4.3.1 rice/detail/ExceptionHandler.ipp
rice-4.3.0 rice/detail/ExceptionHandler.ipp
rice-4.2.1 rice/detail/ExceptionHandler.ipp
rice-4.2.0 rice/detail/ExceptionHandler.ipp
rice-4.1.0 rice/detail/ExceptionHandler.ipp