class Nutriscore::Common::Score
Attributes
nutrients[R]
Public Class Methods
new(nutrients)
click to toggle source
# File lib/nutriscore/common/score.rb, line 17 def initialize(nutrients) @nutrients = Nutrients.wrap(nutrients) end
nutrient_keys()
click to toggle source
# File lib/nutriscore/common/score.rb, line 9 def self.nutrient_keys [] end
Public Instance Methods
inspect()
click to toggle source
# File lib/nutriscore/common/score.rb, line 21 def inspect "#<#{self.class} score=#{score} #{inspect_nutrients}>" end
score()
click to toggle source
# File lib/nutriscore/common/score.rb, line 13 def score self.class.nutrient_keys.map(&method(:public_send)).reduce(&:+) end
Private Instance Methods
inspect_nutrients()
click to toggle source
# File lib/nutriscore/common/score.rb, line 35 def inspect_nutrients self.class.nutrient_keys.map do |key| "#{key}=#{public_send(key)}" end.join(" ") end
score_value(value, extremes) { |min| ... }
click to toggle source
# File lib/nutriscore/common/score.rb, line 27 def score_value(value, extremes) if value.nil? Range.wrap(extremes) else Range.new(yield(value.min), yield(value.max)) end end