[](key)
click to toggle source
def [](key)
@downcased[key.to_s.downcase]
end
[]=(key, value)
click to toggle source
def []=(key, value)
raw_writer(key, value)
@downcased[key.to_s.downcase] = value
end
assoc(obj)
click to toggle source
def assoc(obj)
@downcased.assoc(obj.downcase)
end
delete(key, &proc)
click to toggle source
def delete(key, &proc)
raw_delete(key, &proc)
@downcased.delete(key.to_s.downcase, &proc)
end
fetch(key, default = nil, &proc)
click to toggle source
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
has_key?(key)
click to toggle source
def has_key?(key)
raw_key?(key) || @downcased.has_key?(key.to_s.downcase)
end
merge(other_hash)
click to toggle source
def merge(other_hash)
self.dup.merge!(other_hash)
end
merge!(other_hash)
click to toggle source
def merge!(other_hash)
other_hash.each do |key, value|
self[key] = value
end
raw_merge!(other_hash)
end
raw_fetch(key, default = nil, &proc)
rehash()
click to toggle source
def rehash
@downcased.rehash
raw_rehash
end
values_at(*keys)
click to toggle source
def values_at(*keys)
@downcased.values_at(*keys.map {|key| key.to_s.downcase})
end