Sha256: b6f4f933d227215b27149435ad8a235c2051fc9a2c6863d851190d89ae42f4a6
Contents?: true
Size: 523 Bytes
Versions: 6
Compression:
Stored size: 523 Bytes
Contents
# A case-normalizing Hash, adjusting on [] and []=. # Shamelessly swiped from Rack module Resourceful class Header < Hash def initialize(hash={}) hash.each { |k, v| self[k] = v } end def to_hash {}.replace(self) end def [](k) super capitalize(k) end def []=(k, v) super capitalize(k), v end def has_key?(k) super capitalize(k) end def capitalize(k) k.to_s.downcase.gsub(/^.|[-_\s]./) { |x| x.upcase }.gsub('_', '-') end end end
Version data entries
6 entries across 6 versions & 2 rubygems