Sha256: 715aa663b28a13adabac0e860beec3900376ff3fb5ca57e21eae76a27ad06be2
Contents?: true
Size: 897 Bytes
Versions: 1
Compression:
Stored size: 897 Bytes
Contents
class Menu_DSL attr_reader :nombre_menu, :lista_platos, :precio_menu 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 def descripcion(n) @nombre_menu = n end def componente(descripcion, precio = {}) componente = "\n - " + descripcion componente << " || Precio: #{precio[:Precio]} € " if precio[:Precio] @precio_menu += precio[:Precio] @lista_platos << componente end 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 end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
alimentacion-0.1.0 | lib/alimentacion/menu_dsl.rb |