# File lib/ruote/storage/hash_storage.rb, line 124
    def get_many(type, key=nil, opts={})

      # NOTE : no dup here for now

      synchronize do

        docs = if key
          keys = Array(key).map { |k| k.is_a?(String) ? "!#{k}" : k }
          @h[type].values.select { |doc| key_match?(type, keys, doc) }
        else
          @h[type].values
        end

        return docs.size if opts[:count]

        docs = docs.sort_by { |d| d['_id'] }
        docs = docs.reverse if opts[:descending]

        skip = opts[:skip] || 0
        limit = opts[:limit] || docs.size

        docs[skip, limit]
      end
    end