Sha256: 219ce025a5303930db2ef9384cc2ad7213d8440f9488ed361a8b2f50bbfb34e5

Contents?: true

Size: 743 Bytes

Versions: 3

Compression:

Stored size: 743 Bytes

Contents

require "flex_station_data/presenters/linear_regression/plate_hash"

module FlexStationData
  module Presenters
    module LinearRegression
      class PlatesHash
        include Concerns::Presenter

        attr_reader :file, :plates, :plate_presenter, :options

        def initialize(file, plates, plate_presenter: PlateHash, **options)
          @file = file
          @plates = plates
          @plate_presenter = plate_presenter
          @options = options
        end

        def present
          plates.flat_map do |plate|
            plate_presenter.present(plate, **options).map do |plate_hash|
              { "file" => file.basename.to_s }.merge(plate_hash)
            end
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
flex-station-data-0.3.2 lib/flex_station_data/presenters/linear_regression/plates_hash.rb
flex-station-data-0.3.1 lib/flex_station_data/presenters/linear_regression/plates_hash.rb
flex-station-data-0.3.0 lib/flex_station_data/presenters/linear_regression/plates_hash.rb