class DietaryDsl::FoodValues

Clase que representa un tipo de valor nutricional y sus datos

Public Class Methods

new(title, values) click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 11
def initialize(title, values)
  @title = title
  @data = arr_to_hash(parse_values(values), COMPONENTS) { |value| value[:id] }
end

Public Instance Methods

[](key) click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 16
def [](key)
  @data[key]
end
each() { |i| ... } click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 20
def each
  @data.each { |i| yield i }
end
inspect() click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 34
def inspect
  to_s
end
parse_values(values) click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 24
def parse_values(values)
  values
    .map { |value| FoodValue.new(value) }
    .uniq { |value| value[:id] }
end
to_s() click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 30
def to_s
  JSON.pretty_generate(@data).gsub(':', ' =>') + "\n"
end
to_table() click to toggle source
# File lib/dietary_dsl/bedca_api/food_values.rb, line 38
    def to_table
      <<~TO_TABLE
        ### #{@title}

        | Componente | Valor | Unidad |
        |------------|-------|--------|
        #{@data.map { |_key, value| value.to_table }.join("\n")}
      TO_TABLE
    end