class HttpHeaders::AcceptLanguage::Entry
Constants
- DELIMITER
Attributes
index[RW]
language[RW]
locale[RW]
parameters[RW]
region[RW]
Public Class Methods
new(locale, index:, parameters:)
click to toggle source
# File lib/http_headers/accept_language.rb, line 16 def initialize(locale, index:, parameters:) self.locale = locale # TODO: support extlang correctly, maybe we don't even need this self.language, self.region = locale.split(DELIMITER) self.parameters = parameters self.index = index freeze end
Public Instance Methods
<=>(other)
click to toggle source
# File lib/http_headers/accept_language.rb, line 31 def <=>(other) quality = other.q <=> q return quality unless quality.zero? index <=> other.send(:index) end
[](parameter)
click to toggle source
# File lib/http_headers/accept_language.rb, line 37 def [](parameter) parameters.fetch(String(parameter).to_sym) end
q()
click to toggle source
noinspection RubyInstanceMethodNamingConvention
# File lib/http_headers/accept_language.rb, line 27 def q parameters.fetch(:q) { 1.0 }.to_f end
to_header()
click to toggle source
# File lib/http_headers/accept_language.rb, line 41 def to_header to_s end
to_s()
click to toggle source
# File lib/http_headers/accept_language.rb, line 45 def to_s [locale].concat(parameters.map { |k, v| "#{k}=#{v}" }).compact.reject(&:empty?).join('; ') end