Class: NHKore::Missingno
- Inherits:
-
Object
- Object
- NHKore::Missingno
- Defined in:
- lib/nhkore/missingno.rb
Instance Attribute Summary collapse
-
#kanas ⇒ Object
readonly
Returns the value of attribute kanas.
-
#kanjis ⇒ Object
readonly
Returns the value of attribute kanjis.
Instance Method Summary collapse
- #add_article(article) ⇒ Object
- #add_news(news) ⇒ Object
- #add_words(words) ⇒ Object
-
#initialize(data) ⇒ Missingno
constructor
A new instance of Missingno.
- #kana_from_kanji(kanji) ⇒ Object
- #kanji_from_kana(kana) ⇒ Object
Constructor Details
#initialize(data) ⇒ Missingno
Returns a new instance of Missingno.
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/nhkore/missingno.rb', line 19 def initialize(data) super() @kanas = {} @kanjis = {} # News? if data.respond_to?(:articles) add_news(data) # Article? elsif data.respond_to?(:words) add_article(data) else add_words(data) end end |
Instance Attribute Details
#kanas ⇒ Object (readonly)
Returns the value of attribute kanas.
15 16 17 |
# File 'lib/nhkore/missingno.rb', line 15 def kanas @kanas end |
#kanjis ⇒ Object (readonly)
Returns the value of attribute kanjis.
16 17 18 |
# File 'lib/nhkore/missingno.rb', line 16 def kanjis @kanjis end |
Instance Method Details
#add_article(article) ⇒ Object
36 37 38 |
# File 'lib/nhkore/missingno.rb', line 36 def add_article(article) add_words(article.words.values) end |
#add_news(news) ⇒ Object
40 41 42 43 44 |
# File 'lib/nhkore/missingno.rb', line 40 def add_news(news) news.articles.each_value do |article| add_article(article) end end |
#add_words(words) ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/nhkore/missingno.rb', line 46 def add_words(words) words.each do |word| # We only want ones that are both filled in because # Word.scrape_ruby_tag() will raise an error if either is empty. next if Util.empty_web_str?(word.kana) || Util.empty_web_str?(word.kanji) if !kanas.key?(word.kana) kanas[word.kana] = word end if !kanjis.key?(word.kanji) kanjis[word.kanji] = word end end end |
#kana_from_kanji(kanji) ⇒ Object
62 63 64 65 66 |
# File 'lib/nhkore/missingno.rb', line 62 def kana_from_kanji(kanji) word = @kanjis[kanji] return word&.kana end |
#kanji_from_kana(kana) ⇒ Object
68 69 70 71 72 |
# File 'lib/nhkore/missingno.rb', line 68 def kanji_from_kana(kana) word = @kanas[kana] return word&.kanji end |