Sha256: fcac2c76886c31a58d248949f2c4771ced6329ce4a4aba11426a7d6dbc3bc163
Contents?: true
Size: 901 Bytes
Versions: 1
Compression:
Stored size: 901 Bytes
Contents
# alpha at 2007.10.14 require 'puzzle_generator/puzzle' require 'ludy/hash/reverse_merge' # require 'rubygems' if RUBY_VERSION < '1.9.0' # require 'facets/timer' require 'ludy/timer' # simple and stupid timer.... module PuzzleGenerator def self.generate_chained_map option = {}; generate_klass ChainedMap, option; end def self.generate_klass klass, option = {} option.reverse_merge! :timeout => 5 generate(option[:timeout]){ klass.new option } end LastTriedInfo = {} def self.generate timeout = 5, &generator timer = Ludy::Timer.new(timeout).start tried_times = 1 begin result = generator.call until result.result_map.kind_of? Array tried_times += 1 result = generator.call end ensure # timer.stop LastTriedInfo.merge! :tried_times => tried_times, :tried_duration => timer.total_time end result end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ludy-0.1.9 | lib/puzzle_generator.rb |