Sha256: d53aab6d09239d8a95e911910fa2448a82d42909d8bc3b9ea561f286b91ca41e

Contents?: true

Size: 665 Bytes

Versions: 7

Compression:

Stored size: 665 Bytes

Contents

module SoberSwag
  module Reporting
    module Report
      ##
      # Report errors that arose while parsing a list.
      class List < Base
        ##
        # @param element [Hash<Int, Base>] a hash of bad element indices to bad
        #   element values
        def initialize(elements)
          @elements = elements
        end

        attr_reader :elements

        def each_error
          return enum_for(:each_error) unless block_given?

          elements.each do |k, v|
            v.each_error do |nested, err|
              yield ["[#{k}]", nested].reject(&:nil?).join(''), err
            end
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
sober_swag-0.25.2 lib/sober_swag/reporting/report/list.rb
sober_swag-0.25.1 lib/sober_swag/reporting/report/list.rb
sober_swag-0.25.0 lib/sober_swag/reporting/report/list.rb
sober_swag-0.24.1 lib/sober_swag/reporting/report/list.rb
sober_swag-0.24.0 lib/sober_swag/reporting/report/list.rb
sober_swag-0.23.0 lib/sober_swag/reporting/report/list.rb
sober_swag-0.22.0 lib/sober_swag/reporting/report/list.rb