Methods

Files

Class/Module Index [+]

Quicksearch

Tarantool::Request::DefaultShardProc

Public Instance Methods

call(shard_values, shards_count, this) click to toggle source
# File lib/tarantool/shards_support.rb, line 32
def call(shard_values, shards_count, this)
  if shard_values.all?
    hash = i = 0
    size = shard_values.size
    while i < size
      hash = case value = shard_values[i]
        when Integer
          murmur3_32_int64_hash(value, hash)
        when String
          murmur3_32_str_hash(value, hash)
        else
          raise ValueError, "Default sharding proc could deal only with strings and integers"
        end
      i += 1
    end
    sumbur(hash, shards_count)
  end
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.