Module: Lab42::NHash::Hierarchy
- Included in:
- Lab42::NHash
- Defined in:
- lib/lab42/nhash/hierarchies.rb
Instance Method Summary collapse
- #add_hierarchies(*some_hierarchies) ⇒ Object
- #add_hierarchy(a_hierarchy = {}) ⇒ Object
- #get_from_hierarchies(keyexpr, keyexc) ⇒ Object
Instance Method Details
#add_hierarchies(*some_hierarchies) ⇒ Object
10 11 12 13 14 15 |
# File 'lib/lab42/nhash/hierarchies.rb', line 10 def add_hierarchies *some_hierarchies some_hierarchies.each do | a_hierarchy | add_hierarchy a_hierarchy end self end |
#add_hierarchy(a_hierarchy = {}) ⇒ Object
4 5 6 7 8 9 |
# File 'lib/lab42/nhash/hierarchies.rb', line 4 def add_hierarchy a_hierarchy={} a_hierarchy = self.class.new a_hierarchy if Hash === a_hierarchy raise ArgumentError, 'not an NHash instance' unless self.class === a_hierarchy @hierarchies << a_hierarchy self end |
#get_from_hierarchies(keyexpr, keyexc) ⇒ Object
17 18 19 20 21 22 23 24 25 |
# File 'lib/lab42/nhash/hierarchies.rb', line 17 def get_from_hierarchies keyexpr, keyexc @hierarchies.each do | h | begin return h.get keyexpr rescue KeyError end end raise KeyError, keyexc end |