hash_methods/subclass_brackets.rb
tests/_examples/hash_methods/subclass_brackets.rb in the metorex repository.
class StringKeyHash < Hash
def [](key)
super(key.to_s)
end
def []=(key, value)
super(key.to_s, value)
end
end
observers = StringKeyHash.new
observers[:rates] = [:reload]
observers[:tariffs] ||= []
observers[:tariffs] << :refresh
observers[:rates] += [:audit]
p(observers)
p(observers[:tariffs])
Output:
{"rates" => [:reload, :audit], "tariffs" => [:refresh]}
[:refresh]