Class: I18nCountryTranslations::LocaleFilesPatternGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/i18n_country_translations/locale_files_pattern_generator.rb

Overview

Generates patterns for locale files, bases on a list of supported locales

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(base_pattern, extension = '.yml') ⇒ LocaleFilesPatternGenerator

Returns a new instance of LocaleFilesPatternGenerator.



8
9
10
11
# File 'lib/i18n_country_translations/locale_files_pattern_generator.rb', line 8

def initialize(base_pattern, extension = '.yml')
  @base_pattern = base_pattern
  @extension = extension
end

Instance Attribute Details

#base_patternObject (readonly)

Returns the value of attribute base_pattern.



6
7
8
# File 'lib/i18n_country_translations/locale_files_pattern_generator.rb', line 6

def base_pattern
  @base_pattern
end

#extensionObject (readonly)

Returns the value of attribute extension.



6
7
8
# File 'lib/i18n_country_translations/locale_files_pattern_generator.rb', line 6

def extension
  @extension
end

Instance Method Details

#pattern_from(locales) ⇒ Object

Generates a glob file pattern for the specified list of locales (i.e. IETF language tags)



14
15
16
17
18
19
# File 'lib/i18n_country_translations/locale_files_pattern_generator.rb', line 14

def pattern_from(locales)
  locales = Array(locales || [])
  locales = locales.map { |locale| subpatterns_from locale }.flatten
  pattern = locales.blank? ? '*' : "{#{locales.join ','}}"
  "#{base_pattern}#{pattern}#{extension}"
end