Sha256: e4fa0337f4f921124700f083f0a44a0ed4974b558f2deef25a08dc7e032b4d29
Contents?: true
Size: 791 Bytes
Versions: 76
Compression:
Stored size: 791 Bytes
Contents
# OrderedHash is namespaced to prevent conflicts with other implementations module ActiveSupport class OrderedHash < Array #:nodoc: def []=(key, value) if pair = assoc(key) pair.pop pair << value else self << [key, value] end end def [](key) pair = assoc(key) pair ? pair.last : nil end def keys collect { |key, value| key } end def values collect { |key, value| value } end end end class OrderedOptions < ActiveSupport::OrderedHash #:nodoc: def []=(key, value) super(key.to_sym, value) end def [](key) super(key.to_sym) end def method_missing(name, *args) if name.to_s =~ /(.*)=$/ self[$1.to_sym] = args.first else self[name] end end end
Version data entries
76 entries across 76 versions & 5 rubygems