class Groupie::Group

Group represents a group or category that words can be classified into.

Attributes

word_counts[R]

Public Class Methods

new(name) click to toggle source
# File lib/groupie/group.rb, line 8
def initialize(name)
  @name = name
  @word_counts = {}
end

Public Instance Methods

<<(*words)
Alias for: add
add(*words) click to toggle source

Add new words to the group.

# File lib/groupie/group.rb, line 18
def add(*words)
  words.flatten.each do |word|
    add_word(word)
  end
  nil
end
Also aliased as: <<
count(word) click to toggle source

Return the count for a specific word.

# File lib/groupie/group.rb, line 28
def count(word)
  @word_counts[word] || 0
end
words() click to toggle source
# File lib/groupie/group.rb, line 13
def words
  @word_counts.keys
end

Private Instance Methods

add_word(word) click to toggle source

Add a single word and count it.

# File lib/groupie/group.rb, line 35
def add_word(word)
  @word_counts[word] ||= 0
  @word_counts[word] += 1
end