class Food::PlateDSL

Attributes

descripcion_plato[R]
food[R]
food_aux[R]
food_gr[R]
name[R]
use[R]

Public Class Methods

new(name) { |self| ... } click to toggle source
# File lib/food/plateDSL.rb, line 5
def initialize(name, &block)
    @name = name
    @descripcion_plato = ""
    @food
    @food_aux = []
    @food_gr = [] 
    @use

    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/food/plateDSL.rb, line 26
def alimento(options = {})
    @food_aux << options[:objeto]
    @food_gr << options[:gramos]
end
nombre(full_name) click to toggle source
# File lib/food/plateDSL.rb, line 22
def nombre(full_name)
    @descripcion_plato = full_name
end
plato() click to toggle source
# File lib/food/plateDSL.rb, line 49
def plato 
    @food = List.new(@food_aux[0])
    for i in (1..@food_aux.length - 1)
        @food.insert_head(@food_aux[i])
    end
    @use = PlateAmbiental.new(name, food, food_gr)
end
to_s() click to toggle source
# File lib/food/plateDSL.rb, line 31
def to_s
    if @use == nil
        plato()
    end
    aux = "Nombre Plato: #{@descripcion_plato}\n"
    aux += "Alimentos: "
    i = 0
    food.each { |val| aux += "\n\t" + val.value.name 
                aux += "\n\t\tGramos: #{food_gr[i]}"
                i += 1
    }
    aux += "\nCalorĂ­as del Plato: #{@use.VCT()}"
    aux += "\nValores ambientales:"
    aux += "\n\tCO2: #{@use.daily_co2}"
    aux += "\n\tGround Use: #{@use.ground_use_plate}"
    return aux
end