module BardBot

Constants

VERSION

Public Class Methods

characters() click to toggle source
# File lib/bard_bot.rb, line 39
def characters
  Dir[config.character_dir + '/*.txt'].map do |char|
    char.split(File::SEPARATOR).last.sub('.txt', '').to_sym
  end
end
clear_dictionaries!() click to toggle source
# File lib/bard_bot.rb, line 31
def clear_dictionaries!
  @dictionaries.clear
end
config() { |config| ... } click to toggle source
# File lib/bard_bot.rb, line 17
def config
  @config ||= Config.new
  yield @config if block_given?
  @config
end
dictionaries() { |dictionaries| ... } click to toggle source
# File lib/bard_bot.rb, line 23
def dictionaries
  @dictionaries ||= Hash.new do |h, char|
    h[char] = Dictionary.new(config)
  end
  yield @dictionaries if block_given?
  @dictionaries
end
generate_sentence() click to toggle source
# File lib/bard_bot.rb, line 35
def generate_sentence
  dictionaries[config.character].generate_sentence
end
method_missing(meth) click to toggle source
Calls superclass method
# File lib/bard_bot.rb, line 45
def method_missing(meth)
  if /^generate_(?<num>\d+)_sentences$/ =~ meth.to_s
    return Array.new.fill(0...num.to_i) { generate_sentence }.join
  end
  super
end