class Analtex::Dictionary

Public Class Methods

new() click to toggle source
# File lib/analtex/dictionary.rb, line 3
def initialize
  @word_counts = Hash.new { 0 }
  @word_indices = {}
end

Public Instance Methods

add_word(word) click to toggle source
# File lib/analtex/dictionary.rb, line 8
def add_word(word)
  @word_counts[word] += 1
end
add_words(words) click to toggle source
# File lib/analtex/dictionary.rb, line 12
def add_words(words)
  words.each do |word|
    add_word(word)
  end
end
prepare(min_occurrences = 1) click to toggle source
# File lib/analtex/dictionary.rb, line 26
def prepare(min_occurrences = 1)
  raise 'Do not run twice!' unless @word_indices.keys.empty?

  @word_counts.each_pair do |word, occurrences|
    if occurrences >= min_occurrences
      new_word_index = @word_indices.length
      @word_indices[word] = new_word_index
    end
  end
end
word_counts() click to toggle source
# File lib/analtex/dictionary.rb, line 22
def word_counts
  @word_counts
end
words() click to toggle source
# File lib/analtex/dictionary.rb, line 18
def words
  @word_indices
end