Class: Megalopolis::MHash

Inherits:
Hash
  • Object
show all
Defined in:
lib/megalopolis/scheme.rb

Direct Known Subclasses

Index, Novel

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ MHash

Returns a new instance of MHash.



5
6
7
# File 'lib/megalopolis/scheme.rb', line 5

def initialize(params={})
  self.update params
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(action, *args) ⇒ Object



9
10
11
12
13
# File 'lib/megalopolis/scheme.rb', line 9

def method_missing(action, *args)
  stru = self[action] || self[action.to_s]
  stru = MHash.new(stru) if stru.class == Hash
  return stru
end

Instance Method Details

#paramsObject Also known as: available_methods



15
# File 'lib/megalopolis/scheme.rb', line 15

def params() self.keys.map{|k|k.to_sym} ; end