class Excon::Headers
def [](key)
def [](key) @downcased[key.to_s.downcase] end
def []=(key, value)
def []=(key, value) raw_writer(key, value) @downcased[key.to_s.downcase] = value end
def assoc(obj)
def assoc(obj) @downcased.assoc(obj.downcase) end
def delete(key, &proc)
def delete(key, &proc) raw_delete(key, &proc) @downcased.delete(key.to_s.downcase, &proc) end
def fetch(key, default = nil, &proc)
def fetch(key, default = nil, &proc) if proc @downcased.fetch(key.to_s.downcase, &proc) else @downcased.fetch(key.to_s.downcase, default) end end
def has_key?(key)
def has_key?(key) raw_key?(key) || @downcased.has_key?(key.to_s.downcase) end
def initialize
def initialize super @downcased = {} end
def merge(other_hash)
def merge(other_hash) self.dup.merge!(other_hash) end
def merge!(other_hash)
def merge!(other_hash) other_hash.each do |key, value| self[key] = value end raw_merge!(other_hash) end
def rehash
def rehash @downcased.rehash raw_rehash end
def values_at(*keys)
def values_at(*keys) @downcased.values_at(*keys.map {|key| key.to_s.downcase}) end