Class: BibleRef::Languages::Base
- Inherits:
-
Object
- Object
- BibleRef::Languages::Base
- Defined in:
- lib/bible_ref/languages/base.rb
Direct Known Subclasses
Instance Method Summary collapse
- #book_id(book_name, canon) ⇒ Object
- #book_name(book_name, canon) ⇒ Object
- #books ⇒ Object
- #replace_roman_numerals(book) ⇒ Object
Instance Method Details
#book_id(book_name, canon) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/bible_ref/languages/base.rb', line 8 def book_id(book_name, canon) book_name = replace_roman_numerals(book_name.downcase) return book_name.upcase if books[book_name.upcase] # already normalized canon.books.each do |book| match = books[book][:match] return book if book_name =~ match end nil end |
#book_name(book_name, canon) ⇒ Object
18 19 20 21 |
# File 'lib/bible_ref/languages/base.rb', line 18 def book_name(book_name, canon) return unless id = book_id(book_name, canon) books[id][:name] end |
#books ⇒ Object
4 5 6 |
# File 'lib/bible_ref/languages/base.rb', line 4 def books fail NotImplementedError, "You must override #books in your language class." end |
#replace_roman_numerals(book) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/bible_ref/languages/base.rb', line 23 def replace_roman_numerals(book) book.sub!(/^iii/i, '3') book.sub!(/^ii/i, '2') book.sub!(/^i/i, '1') book end |