Sha256: 8c5dde53c48cbfee45eef8a02795533cd7bb0ca07d274f644196f1e0e42f5bd4
Contents?: true
Size: 867 Bytes
Versions: 7
Compression:
Stored size: 867 Bytes
Contents
module Zafu if RUBY_VERSION.split('.')[0..1].join('.').to_f > 1.8 OrderedHash = Hash else class OrderedHash < Hash def []=(k, v) get_keys << k unless get_keys.include?(k) super end def merge!(hash) hash.keys.each do |k| get_keys << k unless get_keys.include?(k) end super end def merge(hash) res = dup res.merge!(hash) res end alias o_keys keys def get_keys @keys ||= o_keys end def keys get_keys.dup end def each keys.each do |k| yield(k, self[k]) end end def delete(k) get_keys.delete(k) super end def dup copy = super copy.instance_variable_set(:@keys, keys) copy end end end end
Version data entries
7 entries across 7 versions & 2 rubygems