lib/markov.rb in markov-rb-0.1.2 vs lib/markov.rb in markov-rb-0.1.3

- old
+ new

@@ -1,7 +1,35 @@ require 'ruby-progressbar' +require 'oj' require 'markov/version' require 'markov/transition_matrix' require 'markov/statistics/random_event' require 'markov/chain' + +module Markov + def self.generate(thing) + chain_for(thing).generate_word!.strip + end + + private + def self.chains + @chains ||= {} + end + + def self.chain_for(thing) + chains[thing] ||= load_chain(thing) + end + + def self.load_chain(thing) + analysis_file = File.join( + File.expand_path(File.dirname(__FILE__)), + '..', + 'data', + "#{thing}.json" + ) + + chain_data = File.read(analysis_file) + Oj.load(chain_data) + end +end