Module: BCP47

Defined in:
lib/bcp47_spec.rb,
lib/bcp47_spec/parser.rb,
lib/bcp47_spec/version.rb

Defined Under Namespace

Modules: Parser Classes: InvalidLanguageTag, Tag

Constant Summary collapse

VERSION =
'0.2.1'.freeze

Class Method Summary collapse

Class Method Details

.parse(language_tag) ⇒ Object

Raises:



16
17
18
19
20
21
22
# File 'lib/bcp47_spec.rb', line 16

def parse(language_tag)
  result = Parser.parse(language_tag)
  raise InvalidLanguageTag, "Invalid language tag: #{language_tag}" unless result

  fields = %w[language script region variants extensions private]
  Tag.new(*result.values_at(*fields))
end

.valid?(language_tag) ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/bcp47_spec.rb', line 12

def valid?(language_tag)
  !Parser.parse(language_tag).nil?
end