Class: Karamzin::Dictionary

Inherits:
Object
  • Object
show all
Includes:
Config
Defined in:
lib/karamzin/dictionary.rb

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ Dictionary

Returns a new instance of Dictionary.



4
5
6
# File 'lib/karamzin/dictionary.rb', line 4

def initialize(name)
  @dictionary = make_dictionary name
end

Instance Method Details

#[](letter) ⇒ Object



8
9
10
# File 'lib/karamzin/dictionary.rb', line 8

def [](letter)
  @dictionary[letter]
end

#indexesObject



12
13
14
# File 'lib/karamzin/dictionary.rb', line 12

def indexes
  @indexes
end

#is_in_dictionary(word) ⇒ Object



29
30
31
32
33
34
35
# File 'lib/karamzin/dictionary.rb', line 29

def is_in_dictionary(word)
  if @dictionary[word[0].mb_chars.downcase.to_s]
    unless word[0] == YO_LETTER
      @dictionary[word[0].mb_chars.downcase.to_s].index word.mb_chars.downcase.to_s
    end
  end
end

#make_dictionary(name) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/karamzin/dictionary.rb', line 16

def make_dictionary(name)
  words = YamlLoader.yaml_object(name)[:words]
  variable = {}
  @indexes = {}
  words.map do |word|
    variable[word[0]] ||= []
    variable[word[0]] << word.split(' ')[0]
    @indexes[word[0]] ||= []
    @indexes[word[0]] << word.split(' ')[1]
  end
  variable
end