class Menu_dsl
Attributes
etiqueta[RW]
ingestaIn[RW]
platosIn[RW]
porcentajeIn[RW]
titulo[RW]
Public Class Methods
new(etiqueta) { |self| ... }
click to toggle source
# File lib/prct08/menu_dsl.rb, line 4 def initialize(etiqueta, &block) self.etiqueta = etiqueta self.titulo = "" self.ingestaIn = [] self.platosIn = [] self.porcentajeIn = [] if block_given? if block.arity == 1 yield self else instance_eval(&block) end end end
Public Instance Methods
ingesta(options = {})
click to toggle source
# File lib/prct08/menu_dsl.rb, line 24 def ingesta(options = {}) ingestaIn << "#{options[:min]}" if options[:min] ingestaIn << "#{options[:max]}" if options[:max] end
platos(options = {})
click to toggle source
# File lib/prct08/menu_dsl.rb, line 29 def platos(options = {}) plato = [] plato << "#{options[:descripcion]}" if options[:descripcion] plato << "#{options[:porcion]}" if options[:porcion] plato << "#{options[:gramos]}" if options[:gramos] platosIn << plato end
porcentajes(options = {})
click to toggle source
# File lib/prct08/menu_dsl.rb, line 37 def porcentajes(options = {}) porcentaje = [] porcentaje << "#{options[:vct]}" if options[:vct] porcentaje << "#{options[:proteinas]}" if options[:proteinas] porcentaje << "#{options[:grasas]}" if options[:grasas] porcentaje << "#{options[:hidratos]}" if options[:hidratos] porcentajeIn << porcentaje end
titulos(options = {})
click to toggle source
# File lib/prct08/menu_dsl.rb, line 20 def titulos(options = {}) titulo << "#{options[:titulo]}" end
to_s()
click to toggle source
# File lib/prct08/menu_dsl.rb, line 46 def to_s out = "#{titulo}" out << "\nMinima: #{ingestaIn[0]} % - Maximo: #{ingestaIn[1]} %" platosIn.each_with_index do |plato, index| out << "\n\tDescripcion: #{plato[0]} \n\tPorcion: #{plato[1]} \n\tGramos: #{plato[2]}\n" end porcentajeIn.each_with_index do |porcentaje, index| out << "\n\tV.C.T: #{porcentaje[0]} \n\tProteinas: #{porcentaje[1]} \n\tGrasas: #{porcentaje[2]} \n\tHidratos:#{porcentaje[3]} \n" end out end