# File lib/map.rb, line 729
  def Map.collection_key(collection, key, &block)
    case collection
      when Array
        begin
          key = Integer(key)
        rescue
          raise(IndexError, "(#{ collection.inspect })[#{ key.inspect }]")
        end
        collection[key]

      when Hash
        collection[key]

      else
        raise(IndexError, "(#{ collection.inspect })[#{ key.inspect }]")
    end
  end