methodic_hash.rb

Path: lib/methodic_hash.rb
Last Update: Tue May 22 15:12:09 EDT 2007

The MethodicHash is some method_missing magic that tries to lookup values when keys are passed in as method calls. For instance, if

  mh = MethodicHash.new
  mh['four'] = 'iv'
  mh[:seven] = 'vii'

then

  mh['four'] ---> 'iv'
  mh[:four]  ---> 'iv'
  mh.four    ---> 'iv'

and

  mh['seven'] ---> 'vii'
  mh[:seven]  ---> 'vii'
  mh.seven    ---> 'vii'

This allows access to simply declared facts to be embedded in Ruby code and leverages the possibility of hashing procs.

Note that if the hash uses anything but strings or symbols as keys, the magic stands a good chance of failing, raising an error or acting in a bizarre manner.

[Validate]