class Alimento::PlatoDSL

Attributes

alimentos[R]
componentes[R]
descripcion_plato[R]
gramos[R]
nombre[R]
platito[R]

Public Class Methods

new(nombre) { |self| ... } click to toggle source
# File lib/alimento/platoDSL.rb, line 9
def initialize(nombre, &block)
        @nombre = nombre
        @componentes = []
        @gramos = []
        @platito
        @list 
        if block_given?
                if block.arity == 1
                        yield self
                else
                        instance_eval(&block)
                end
        end
end

Public Instance Methods

alimento(options = {}) click to toggle source
# File lib/alimento/platoDSL.rb, line 28
def alimento(options = {})
        @componentes << options[:alimento]
        @gramos << options[:gramos] if options[:gramos]
end
descripcion(descr) click to toggle source
# File lib/alimento/platoDSL.rb, line 24
def descripcion(descr)
        @descripcion_plato = descr
end
platillo() click to toggle source
# File lib/alimento/platoDSL.rb, line 33
def platillo
        @list = List.new(@componentes[0])
        for i in (1..@componentes.length - 1)
                @list.insert_head(@componentes[i])
        end
        @platito = PlatoAmbiental.new(@nombre, @list, @gramos)
end
to_s() click to toggle source
# File lib/alimento/platoDSL.rb, line 41
def to_s
        if @platillo == nil
                platillo()
        end
        i = 0
        aux = "Nombre: #{@nombre}"
        aux += "\nComponentes: "
        @componentes.each { |val| 
                        aux += "\n\t#{val.nombre}"
                        aux += "\n\tGramos: #{@gramos[i]}"
                        i += 1
        }
        aux
end