Class: AcceptLanguage::Parser

Inherits:
Object
  • Object
show all
Defined in:
lib/accept_language/parser.rb

Overview

Note:

Parse a raw Accept-Language header value into an ordered list of language tags.

Examples:

Parser.new('da, en-gb;q=0.8, en;q=0.7').call

See Also:

Instance Method Summary collapse

Constructor Details

#initialize(raw_input) ⇒ Parser

Returns a new instance of Parser.



10
11
12
# File 'lib/accept_language/parser.rb', line 10

def initialize(raw_input)
  @string = raw_input.to_s
end

Instance Method Details

#callObject



14
15
16
17
# File 'lib/accept_language/parser.rb', line 14

def call
  preferences.sort { |lang_a, lang_b| lang_b.fetch(1) <=> lang_a.fetch(1) }
             .map(&:first)
end