Sha256: 23d2a999a675b392a3dcb52ee43b9a647c2cd2fb69eace988108ffcf33dd87e3

Contents?: true

Size: 443 Bytes

Versions: 6

Compression:

Stored size: 443 Bytes

Contents

require "config_mapper/mapper"

module ConfigMapper

  # Configuration proxy for a collection (e.g. Hash, Array, ConfigDict)
  #
  class CollectionMapper < Mapper

    def initialize(hash)
      @hash = hash
    end

    def path(key)
      "[#{key.inspect}]"
    end

    def get(key)
      @hash[key]
    end

    def set(key, value)
      @hash[key] = value
    end

    def can_set?(key)
      @hash.respond_to?("[]=")
    end

  end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
config_mapper-1.7.0 lib/config_mapper/collection_mapper.rb
config_mapper-1.6.0 lib/config_mapper/collection_mapper.rb
config_mapper-1.5.0 lib/config_mapper/collection_mapper.rb
config_mapper-1.4.1 lib/config_mapper/collection_mapper.rb
config_mapper-1.3.1 lib/config_mapper/collection_mapper.rb
config_mapper-1.3.0 lib/config_mapper/collection_mapper.rb