Class: WordScramble::ScrambledWord::WordChecker
- Inherits:
-
Object
- Object
- WordScramble::ScrambledWord::WordChecker
- Defined in:
- lib/word_scramble/scrambled_word.rb
Instance Method Summary collapse
-
#initialize(scrambled_word, word) ⇒ WordChecker
constructor
A new instance of WordChecker.
- #matches? ⇒ Boolean (also: #matches)
Constructor Details
#initialize(scrambled_word, word) ⇒ WordChecker
Returns a new instance of WordChecker.
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/word_scramble/scrambled_word.rb', line 14 def initialize(scrambled_word, word) @scrambled_letters = scrambled_word.downcase.split('').sort.inject({}) do |frequency_hash, l| frequency_hash[l] ||= 0 frequency_hash[l] += 1 frequency_hash end @word_letters = word.downcase.split('').sort.inject({}) do |frequency_hash, l| frequency_hash[l] ||= 0 frequency_hash[l] += 1 frequency_hash end end |
Instance Method Details
#matches? ⇒ Boolean Also known as: matches
27 28 29 30 31 32 33 |
# File 'lib/word_scramble/scrambled_word.rb', line 27 def matches? @word_letters.each do |letter, count| scrambled_count = @scrambled_letters[letter] return false if scrambled_count.nil? or scrambled_count < count end return true end |