Sha256: 55d72e94282e6e95beced0a04fa20b18deaa7261bea7ee74744da13d319debff

Contents?: true

Size: 374 Bytes

Versions: 1

Compression:

Stored size: 374 Bytes

Contents

module Rlyeh
  class Environment < ::Hash
    def method_missing(method_id, *args)
      case method_id.to_s
      when /^(.+)=$/
        store $1.to_sym, args.first
      when /^(.+)\?$/
        key? $1.to_sym
      else
        unless key? method_id
          store method_id, Environment.new
        else
          fetch method_id
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rlyeh-0.0.1 lib/rlyeh/environment.rb