Class: R18n::UnsupportedLocale

Inherits:
Object
  • Object
show all
Defined in:
lib/r18n-core/unsupported_locale.rb

Overview

Locale without information file. Contain only it code, empty title and data from default locale.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(code, base = nil) ⇒ UnsupportedLocale

Create object for unsupported locale with code and load other locale data from base locale.



30
31
32
33
# File 'lib/r18n-core/unsupported_locale.rb', line 30

def initialize(code, base = nil)
  @code = code
  @base = Locale.load(I18n.default) if @code != I18n.default
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *params) ⇒ Object

Proxy to default locale object.



61
62
63
# File 'lib/r18n-core/unsupported_locale.rb', line 61

def method_missing(name, *params)
  @base.send(name, *params)
end

Instance Attribute Details

#baseObject

Locale, to get data and pluralization for unsupported locale.



26
27
28
# File 'lib/r18n-core/unsupported_locale.rb', line 26

def base
  @base
end

Instance Method Details

#==(locale) ⇒ Object

Is another locale has same code.



56
57
58
# File 'lib/r18n-core/unsupported_locale.rb', line 56

def ==(locale)
  @code.downcase == locale.code.downcase
end

#codeObject

Locale RFC 3066 code.



46
47
48
# File 'lib/r18n-core/unsupported_locale.rb', line 46

def code
  @code
end

#inspectObject

Human readable locale code and title.



41
42
43
# File 'lib/r18n-core/unsupported_locale.rb', line 41

def inspect
  "Unsupported locale #{@code}"
end

#supported?Boolean

Is locale has information file. In this class always return false.

Returns:

  • (Boolean)


36
37
38
# File 'lib/r18n-core/unsupported_locale.rb', line 36

def supported?
  false
end

#titleObject

Locale code as title.



51
52
53
# File 'lib/r18n-core/unsupported_locale.rb', line 51

def title
  @code
end