class Linkedlist::MenuEdades

Menú por edades.

Attributes

rango_edad[R]

Rango de edades recomendado para el menú.

Public Class Methods

new(&block) click to toggle source

Inicializa el menú con los datos pasados (formato DSL).

# File lib/linkedlist/linkedlist.rb, line 168
def initialize(&block)
        instance_eval(&block)
        raise ArgumentError, Menu.err_pct('ingesta diaria') unless Menu.is_pct?(@pct_ingesta)
    raise ArgumentError, Menu.err_pct('proteínas') unless Menu.is_pct?(@pct_prot)
    raise ArgumentError, Menu.err_pct('grasas') unless Menu.is_pct?(@pct_grasas)
    raise ArgumentError, Menu.err_pct('hidratos') unless Menu.is_pct?(@pct_hdc)
    raise ArgumentError, "[Menu.initialize] Los porcentajes de macronutrientes deben sumar 100%" unless @pct_prot + @pct_grasas + @pct_hdc == 100
    raise ArgumentError, "[Menu.initialize] Debe haber al menos un plato" unless @platos.count > 0
        raise ArgumentError, "[MenuEdades.initialize] El rango de edades debe ser de tipo Range" unless @rango_edad.kind_of?(Range)
end

Public Instance Methods

rango(rango) click to toggle source

Establece el rango de edades recomendado para el menú.

# File lib/linkedlist/linkedlist.rb, line 180
def rango(rango)
    @rango_edad = rango
end
to_s() click to toggle source

Devuelve el menú por edades formateado como cadena.

Calls superclass method Linkedlist::Menu#to_s
# File lib/linkedlist/linkedlist.rb, line 185
def to_s
        return super << "Apropiado para edades comprendidas entre los #{@rango_edad.first} y los #{@rango_edad.last} años\n" # Rango de edades
end