Sha256: 029073c22698f65d8e235ad381934b0075bcbde7916cd8ac49974cbfa15ddda3

Contents?: true

Size: 623 Bytes

Versions: 1

Compression:

Stored size: 623 Bytes

Contents

#Clase para representar un Menu con DSL
class Menu
	attr_accessor :nombre,:platos,:precio
	def initialize(nombre,&block)
		@nombre = nombre
		@platos = []
		@precios=[]
        @preciototal =0.0
        		
		if block_given?
            instance_eval(&block)
		end
	end
	
	def componente(options={})
		@platos << options[:plato]
        @precios << options[:precio]
	end

	def precio(total)
        @preciototal = total
	end

	def to_s
        output = "#{@nombre}"
		output << " = #{@preciototal}€\n"
		output << "Contiene: \n"
		@platos.zip(@precios).each do |x,y|
			output << "#{x} = #{y}€\n"
		end
		output
	end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
alu0100905885-0.1.0 lib/prct6/menu_dsl.rb