Sha256: 5cb0f92407b9122d2068a4db47197b318477f0b8c15ddfec460facf6ea6c8674

Contents?: true

Size: 559 Bytes

Versions: 2

Compression:

Stored size: 559 Bytes

Contents

module Nyara
  # Extended hash class for the use in configuration.
  class ConfigHash
    # #### Call-seq
    #
    #     config['a', 'very', 'deep', '', 'key']
    #
    # Equivalent to
    #
    #     config['a']['very']['deep'].last['key'] rescue nil
    #
    def [] *keys
      nested_aref keys.map(&:to_s)
    end

    # #### Call-seq
    #
    #     config['a', 'very', 'deep', 'key'] = value
    #
    # All intermediate level ConfigHashes are created automatically
    def []= *keys, value
      nested_aset keys.map(&:to_s), value
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
nyara-0.1.pre.2 lib/nyara/hashes/config_hash.rb
nyara-0.1.pre.1 lib/nyara/hashes/config_hash.rb