lib/mize/default_cache.rb in mize-0.3.4 vs lib/mize/default_cache.rb in mize-0.3.5

- old
+ new

@@ -1,33 +1,42 @@ require 'monitor' -class Mize::DefaultCache < Hash +class Mize::DefaultCache include MonitorMixin - private(*(instance_methods - Object.instance_methods - %i[ synchronize ])) + def initialize + @data = {} + end def clear(options = nil) - super() + @data.clear + self end def exist?(name, options = nil) - key?(name) + @data.key?(name) end def read(name, options = nil) - fetch(name, nil) + @data.fetch(name, nil) end def write(name, value, options = nil) - store(name, value) + @data.store(name, value) end def delete(name, options = nil) - super(name) + @data.delete(name) end def each_name(&block) - each_key(&block) + @data.each_key(&block) + self + end + + def initialize_dup(other) + super + other.instance_variable_set :@data, @data.dup end alias prototype dup conform_to Mize::CacheProtocol