Sha256: 8cd7d33b1ff87ecc8bfbe783e0723e648b4b9b6a3d1c7679865aea182dee5734

Contents?: true

Size: 694 Bytes

Versions: 3

Compression:

Stored size: 694 Bytes

Contents

require "flex_station_data/presenters/linear_regression/sample_hash"

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

        attr_reader :plate, :sample_presenter, :options

        delegate :times, :samples, to: :plate

        def initialize(plate, sample_presenter: SampleHash, **options)
          @plate = plate
          @sample_presenter = sample_presenter
          @options = options
        end

        def present
          samples.map do |sample|
            { "plate" => plate.label }.merge(sample_presenter.present(times, sample, **options))
          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/plate_hash.rb
flex-station-data-0.3.1 lib/flex_station_data/presenters/linear_regression/plate_hash.rb
flex-station-data-0.3.0 lib/flex_station_data/presenters/linear_regression/plate_hash.rb