Class: NamedHash
Defined Under Namespace
Classes: InvalidKeyError
Instance Method Summary collapse
- #get(key) ⇒ Object (also: #[])
-
#initialize(hash = nil) ⇒ NamedHash
constructor
A new instance of NamedHash.
- #merge(hash) ⇒ Object
- #set(key, value) ⇒ Object (also: #[]=)
- #to_named_hash ⇒ Object (also: #~)
Constructor Details
#initialize(hash = nil) ⇒ NamedHash
Returns a new instance of NamedHash.
4 5 6 7 8 9 |
# File 'lib/named_hash.rb', line 4 def initialize(hash = nil) super() if hash merge(hash) end end |
Instance Method Details
#get(key) ⇒ Object Also known as: []
22 23 24 |
# File 'lib/named_hash.rb', line 22 def get(key) native_get(key.to_s) end |
#merge(hash) ⇒ Object
29 30 31 32 33 |
# File 'lib/named_hash.rb', line 29 def merge(hash) hash.each do |key, value| set(key, value) end end |
#set(key, value) ⇒ Object Also known as: []=
11 12 13 14 15 16 17 |
# File 'lib/named_hash.rb', line 11 def set(key, value) check_key_type(key) if value.is_a?(Hash) && !value.is_a?(NamedHash) value = NamedHash.new(value) end native_set(key.to_s, value) end |
#to_named_hash ⇒ Object Also known as: ~
35 36 37 |
# File 'lib/named_hash.rb', line 35 def to_named_hash self end |