StaticHash
A Hash object which raises an error if any previously-defined key attempts to be set again.
Synopsis
foo = Hash::Static.new foo['name'] = 'Tom' #=> 'Tom' foo['age'] = 30 #=> 30 foo['name'] = 'Bob'
produces
Error: StaticHash has value for key 'name' in object: {"name"=>"Tom", "age"=>30} (RuntimeError)
Methods
Public Instance methods
Set a value for a key; raises an error if that key already exists with a different value.
[ show source ]
# File lib/facets/more/statichash.rb, line 60 def []=(key,val) if self.has_key?(key) && self[key]!=val raise ArgumentError, "StaticHash already has value for key '#{key.to_s}'" end super end