Class: Menudsl
- Inherits:
-
Object
- Object
- Menudsl
- Defined in:
- lib/menudsl.rb
Instance Attribute Summary collapse
-
#desc ⇒ Object
Returns the value of attribute desc.
-
#nombre ⇒ Object
Returns the value of attribute nombre.
-
#platos ⇒ Object
Returns the value of attribute platos.
-
#precios ⇒ Object
Returns the value of attribute precios.
Instance Method Summary collapse
- #descripcion(nombre) ⇒ Object
-
#initialize(nombre, &block) ⇒ Menudsl
constructor
A new instance of Menudsl.
- #plato(plate) ⇒ Object
- #precio(price) ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(nombre, &block) ⇒ Menudsl
Returns a new instance of Menudsl.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/menudsl.rb', line 6 def initialize(nombre, &block) @nombre = nombre @desc = "" @platos = [] @precios = [] if block_given? if block.arity == 1 yield self else instance_eval(&block) end end end |
Instance Attribute Details
#desc ⇒ Object
Returns the value of attribute desc.
4 5 6 |
# File 'lib/menudsl.rb', line 4 def desc @desc end |
#nombre ⇒ Object
Returns the value of attribute nombre.
4 5 6 |
# File 'lib/menudsl.rb', line 4 def nombre @nombre end |
#platos ⇒ Object
Returns the value of attribute platos.
4 5 6 |
# File 'lib/menudsl.rb', line 4 def platos @platos end |
#precios ⇒ Object
Returns the value of attribute precios.
4 5 6 |
# File 'lib/menudsl.rb', line 4 def precios @precios end |
Instance Method Details
#descripcion(nombre) ⇒ Object
21 22 23 |
# File 'lib/menudsl.rb', line 21 def descripcion(nombre) @desc = nombre end |
#plato(plate) ⇒ Object
25 26 27 |
# File 'lib/menudsl.rb', line 25 def plato(plate) @platos << plate end |
#precio(price) ⇒ Object
29 30 31 |
# File 'lib/menudsl.rb', line 29 def precio(price) @precios << price end |
#to_s ⇒ Object
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/menudsl.rb', line 33 def to_s output = "\n\n#{@nombre}" output << "\n#{'=' * @nombre.size}\n\n" output << "#{@desc}\n\n" output << "Platos: \n" @platos.each_with_index do |plato, index| output << "#{plato}Precio: #{@precios.at(index)} €\n\n" end output end |