Class: Menu_DSL

Inherits:
Object
  • Object
show all
Defined in:
lib/alimentacion/menu_dsl.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(nombre_menu, &block) ⇒ Menu_DSL

Returns a new instance of Menu_DSL.



4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/alimentacion/menu_dsl.rb', line 4

def initialize (nombre_menu, &block)
	#@nombre_menu = nombre_menu
	@lista_platos = []
	@precio_menu = 0

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

Instance Attribute Details

#lista_platosObject (readonly)

Returns the value of attribute lista_platos.



2
3
4
# File 'lib/alimentacion/menu_dsl.rb', line 2

def lista_platos
  @lista_platos
end

#nombre_menuObject (readonly)

Returns the value of attribute nombre_menu.



2
3
4
# File 'lib/alimentacion/menu_dsl.rb', line 2

def nombre_menu
  @nombre_menu
end

#precio_menuObject (readonly)

Returns the value of attribute precio_menu.



2
3
4
# File 'lib/alimentacion/menu_dsl.rb', line 2

def precio_menu
  @precio_menu
end

Instance Method Details

#componente(descripcion, precio = {}) ⇒ Object



22
23
24
25
26
27
# File 'lib/alimentacion/menu_dsl.rb', line 22

def componente(descripcion, precio = {})
	componente = "\n - " + descripcion
	componente << " || Precio: #{precio[:Precio]}" if precio[:Precio]
	@precio_menu += precio[:Precio]
	@lista_platos << componente
end

#descripcion(n) ⇒ Object



18
19
20
# File 'lib/alimentacion/menu_dsl.rb', line 18

def descripcion(n)
	@nombre_menu = n
end

#to_sObject



29
30
31
32
33
34
# File 'lib/alimentacion/menu_dsl.rb', line 29

def to_s
	output = @nombre_menu
	output << "\n#{'=' * @nombre_menu.size}\n\n"
               output << "Platos: \n #{@lista_platos.join(' ')}\n\n"
	output << "Precio total: #{@precio_menu}"
end