class Locale::Info::Language
This class contains all the of the ISO information for the ISO 639-3 languages. This class is immutable once constructed.
Attributes
Public Class Methods
Constructs a new Language
instance.
-
code The 2 or 3 digit ISO 639-3 language code.
-
scope A single character that defines the ISO scope of the language -
(I)ndividual
,(M)acrolanguage
, or(S)pecial
. -
type A single character that defines the ISO type of the language -
(A)ncient
,(C)onstructed
,(E)xtinct
,(H)istorical
,(L)iving
, or(S)pecial
. -
name The name of the language.
# File lib/locale/info/language.rb, line 34 def initialize(two_code, three_code, scope, type, name) @two_code, @three_code, @scope, @type, @name = two_code, three_code, scope, type, name @individual = (scope == "I") @macro = (scope == "M") @special = (scope == "S") @constructed = (type == "C") @living = (type == "L") @extinct = (type == "E") @ancient = (type == "A") @historical = (type == "H") @special_type = (type == "S") end
Public Instance Methods
Returns true if the language is an ancient language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 67 def ancient?; @ancient; end
Returns true if the language is a constructed language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 58 def constructed?; @constructed; end
Returns true if the language is an extinct language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 64 def extinct?; @extinct; end
Returns true if the language is an historical language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 70 def historical?; @historical; end
Returns true if the language is an individual language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 49 def individual?; @individual; end
Returns this object is valid as ISO 639 data.
# File lib/locale/info/language.rb, line 85 def iso_language? @@lang_two_codes[two_code] != nil || @@lang_three_codes[three_code] != nil end
Returns true if the language is a living language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 61 def living?; @living; end
Returns true if the language is a macro language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 52 def macro?; @macro; end
Returns true if the language is a special language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 55 def special?; @special; end
Returns true if the language is a special type language according to the ISO 639-3 data.
# File lib/locale/info/language.rb, line 73 def special_type?; @special_type; end
Returns the two or three code.
# File lib/locale/info/language.rb, line 76 def to_s if two_code and two_code.size > 0 two_code else three_code end end