class DslDieta
Attributes
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
@overload Método de acceso y escritura para los atributos de instancia.
Public Class Methods
@note Método por el cual se inicializa la dieta mediante el título y un bloque @param [String] Título, [Block] Block
# File lib/prct06/dslDieta.rb, line 13 def initialize(titulo,&block) self.titulo=titulo self.platos =[] if block_given? if block.arity == 1 yield self else instance_eval(&block) end end end
Public Instance Methods
@note Función que permite comparar dos dietas en función de sus valor calorífico. @param [Diet] Menú a comparar @return [Int] 1 if self>other, 0 if self == other, -1 if self<other
# File lib/prct06/dslDieta.rb, line 39 def <=>(other) self.vct<=>other.vct end
@note Función que permite asignar valor a los atributos max y min. @param [Hash] Parámetro min y max
# File lib/prct06/dslDieta.rb, line 44 def ingesta(args = {}) self.max="#{args[:max]}" if args[:max] self.min="#{args[:min]}" if args[:min] end
@note Función que permite añadir un nuevo plato a la dieta. @param [Hash] Parámetros descripcion, porcion y gramos
# File lib/prct06/dslDieta.rb, line 50 def plato(args = {}) input = " -#{args[:descripcion]}" if args[:descripcion] input += ", #{args[:porcion]}" if args[:porcion] input += ", #{args[:gramos]} gramos" if args[:gramos] self.platos << "#{input}" end
@note Función que permite asignar valor a los parámetros: vct, proteinas, grasas y hidratos. @param [Hash] Parámetros descripcion, porcion y gramos
# File lib/prct06/dslDieta.rb, line 58 def porcentajes(args = {}) self.vct="#{args[:vct]}" if args[:vct] self.proteinas="#{args[:proteinas]}" if args[:proteinas] self.grasas="#{args[:grasas]}" if args[:grasas] self.hidratos="#{args[:hidratos]}" if args[:hidratos] end
@note Función que permite mostrar una salida formateada de la lista @return [String] String con el contenido de la lista
# File lib/prct06/dslDieta.rb, line 26 def to_s output = "#{titulo} (#{min}-#{max}%):\n" i=0 begin output+="#{platos[i]}\n" i+=1 end while (i<platos.length) output += "V.C.T. | % #{vct} kcal | #{proteinas}% - #{grasas}% - #{hidratos}%\n" "#{output}" end