Sha256: ee313583f93108769fc0d4dfa64bd45d608b32db9172305e2cf0124539e4c81f

Contents?: true

Size: 350 Bytes

Versions: 4

Compression:

Stored size: 350 Bytes

Contents

module Cavalry
  class Error
    delegate :errors, to: :@record

    def initialize(record)
      @record = record
      dump
    end

    def dump
      { record: @record.class.name }.tap do |h|
        h.merge!(attributes: @record.attributes) if @record.respond_to?(:attributes)
        h.merge!(errors: errors.to_hash)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
cavalry-0.2.2 lib/cavalry/error.rb
cavalry-0.2.1 lib/cavalry/error.rb
cavalry-0.2.0 lib/cavalry/error.rb
cavalry-0.1.0 lib/cavalry/error.rb