Module: Yosina
- Defined in:
- lib/yosina.rb,
lib/yosina/char.rb,
lib/yosina/chars.rb,
lib/yosina/recipes.rb,
lib/yosina/version.rb,
lib/yosina/transliterator.rb,
lib/yosina/transliterators.rb,
lib/yosina/transliterators/spaces.rb,
lib/yosina/transliterators/hyphens.rb,
lib/yosina/transliterators/combined.rb,
lib/yosina/transliterators/radicals.rb,
lib/yosina/transliterators/hira_kata.rb,
lib/yosina/transliterators/hyphens_data.rb,
lib/yosina/transliterators/ivs_svs_base.rb,
lib/yosina/transliterators/combined_data.rb,
lib/yosina/transliterators/kanji_old_new.rb,
lib/yosina/transliterators/roman_numerals.rb,
lib/yosina/transliterators/hira_kata_table.rb,
lib/yosina/transliterators/small_hirakatas.rb,
lib/yosina/transliterators/archaic_hirakatas.rb,
lib/yosina/transliterators/ivs_svs_base_data.rb,
lib/yosina/transliterators/circled_or_squared.rb,
lib/yosina/transliterators/jisx0201_and_alike.rb,
lib/yosina/transliterators/roman_numerals_data.rb,
lib/yosina/transliterators/historical_hirakatas.rb,
lib/yosina/transliterators/hira_kata_composition.rb,
lib/yosina/transliterators/prolonged_sound_marks.rb,
lib/yosina/transliterators/circled_or_squared_data.rb,
lib/yosina/transliterators/ideographic_annotations.rb,
lib/yosina/transliterators/japanese_iteration_marks.rb,
lib/yosina/transliterators/mathematical_alphanumerics.rb
Overview
Main module for Yosina text transliteration library
Defined Under Namespace
Modules: Chars, Transliterators Classes: BaseTransliterator, ChainedTransliterator, Char, Error, TransliterationError, TransliterationRecipe, TransliteratorConfig, TransliteratorConfigListBuilder, TransliteratorFactoryError
Constant Summary collapse
- VERSION =
'2.0.0'
Class Method Summary collapse
-
.build_transliterator_configs_from_recipe(recipe) ⇒ Array<Array>
Build an array of transliterator configs from a recipe object.
-
.make_transliterator(configs_or_recipe) ⇒ Proc
Frontend convenience function to create a string-to-string transliterator from a recipe or a list of configs.
Class Method Details
.build_transliterator_configs_from_recipe(recipe) ⇒ Array<Array>
Build an array of transliterator configs from a recipe object
412 413 414 |
# File 'lib/yosina/recipes.rb', line 412 def self.build_transliterator_configs_from_recipe(recipe) recipe.build_transliterator_configs end |
.make_transliterator(configs_or_recipe) ⇒ Proc
Frontend convenience function to create a string-to-string transliterator from a recipe or a list of configs.
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/yosina.rb', line 22 def self.make_transliterator(configs_or_recipe) configs = case configs_or_recipe when TransliterationRecipe configs_or_recipe.build_transliterator_configs.map do |config_array| TransliteratorConfig.new(config_array[0], config_array[1]) end when Array configs_or_recipe.map do |item| case item when String, Symbol TransliteratorConfig.new(item) when Array TransliteratorConfig.new(item[0], item[1]) else item end end else raise ArgumentError, 'configs_or_recipe must be Array or TransliterationRecipe' end transliterator = create_chained_transliterator(configs) proc do |input| chars = Chars.build_char_array(input) result_chars = transliterator.call(chars) result_chars.to_s end end |