Class: PlatoDSL

Inherits:
Object
  • Object
show all
Defined in:
lib/feeding/platoDSL.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(nombre, &block) ⇒ PlatoDSL

Returns a new instance of PlatoDSL.



3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/feeding/platoDSL.rb', line 3

def initialize(nombre, &block)
	@nombre = nombre
	@alimentos = []

	if block_given?
	  if block.arity == 1
		yield self
    	  else
	   	  instance_eval(&block)
    	  end
    	end
end

Instance Attribute Details

#alimentosObject

Returns the value of attribute alimentos.



2
3
4
# File 'lib/feeding/platoDSL.rb', line 2

def alimentos
  @alimentos
end

#nombreObject

Returns the value of attribute nombre.



2
3
4
# File 'lib/feeding/platoDSL.rb', line 2

def nombre
  @nombre
end

Instance Method Details

#alimento(nombre, options = {}) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/feeding/platoDSL.rb', line 16

def alimento(nombre, options = {})
	alimento = nombre
	alimento << " (Gr: #{options[:gramos]} gr)" if options[:gramos]
	alimento << " (Pr: #{options[:proteinas]} gr)" if options[:proteinas]
	alimento << " (Hd: #{options[:hidratos]} gr)" if options[:hidratos]
	alimento << " (Lp: #{options[:lipidos]} gr)" if options[:lipidos]
	alimento << " (CO2: #{options[:gases]} kg/año)" if options[:gases]
	alimento << " (Terreno: #{options[:terreno]} m2/año)\n" if options[:terreno]
	@alimentos << alimento
end

#to_sObject



27
28
29
30
31
# File 'lib/feeding/platoDSL.rb', line 27

def to_s
	salida = @nombre
	salida << "\n#{'=' * @nombre.size}\n\n"
	salida << "Alimentos: - #{@alimentos.join('- ')}\n\n"
end