class Eco::API::Error::Handlers

def add(handler)

def add(handler)
  raise "Expected Eco::API::Error::Handler object. Given: #{policy}" unless handler.is_a?(Eco::API::Error::Handler)
  super(handler)
end

def on(klass_err, type: :error_handler, retry: true, &block)

def on(klass_err, type: :error_handler, retry: true, &block)
  Eco::API::Error.validate_err_class(klass_err)
  raise "Expected block but not given" unless block
  Eco::API::Error::Handler.new(klass_err, type: type, root: self, &block).tap do |handler|
    add(handler)
  end
end