Method: I18n::Inflector::Interpolate#key_to_pattern
- Defined in:
- lib/i18n-inflector/interpolate.rb
#key_to_pattern(key) ⇒ String
This method creates an inflection pattern by collecting information contained in a key-based inflection data.
94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/i18n-inflector/interpolate.rb', line 94 def key_to_pattern(key) key = key.dup pref = key.delete(:@prefix).to_s suff = key.delete(:@suffix).to_s kind = key.delete(:@kind).to_s free = key.delete(:@free) free = free.nil? ? "" : ("" << Operators::Tokens::OR << free.to_s) "" << pref << Markers::PATTERN << kind << Markers::PATTERN_BEGIN << key.map { |k,v| "" << k.to_s << Operators::Tokens::ASSIGN << v.to_s }. join(Operators::Tokens::OR) << free << Markers::PATTERN_END << suff end |