Class: NHKore::Missingno
- Inherits:
-
Object
- Object
- NHKore::Missingno
- Defined in:
- lib/nhkore/missingno.rb
Overview
Instance Attribute Summary collapse
- #kanas ⇒ Object readonly
- #kanjis ⇒ Object readonly
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.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/nhkore/missingno.rb', line 25 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)
21 22 23 |
# File 'lib/nhkore/missingno.rb', line 21 def kanas @kanas end |
#kanjis ⇒ Object (readonly)
22 23 24 |
# File 'lib/nhkore/missingno.rb', line 22 def kanjis @kanjis end |
Instance Method Details
#add_article(article) ⇒ Object
42 43 44 |
# File 'lib/nhkore/missingno.rb', line 42 def add_article(article) add_words(article.words.values) end |
#add_news(news) ⇒ Object
46 47 48 49 50 |
# File 'lib/nhkore/missingno.rb', line 46 def add_news(news) news.articles.each_value do |article| add_article(article) end end |
#add_words(words) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/nhkore/missingno.rb', line 52 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
68 69 70 71 72 |
# File 'lib/nhkore/missingno.rb', line 68 def kana_from_kanji(kanji) word = @kanjis[kanji] return word.nil? ? nil : word.kana end |
#kanji_from_kana(kana) ⇒ Object
74 75 76 77 78 |
# File 'lib/nhkore/missingno.rb', line 74 def kanji_from_kana(kana) word = @kanas[kana] return word.nil? ? nil : word.kanji end |