Sha256: 326e41e159761de9da145fe52a3fdafdfa8e8ad2ca81405819206f60a8b00644

Contents?: true

Size: 402 Bytes

Versions: 9

Compression:

Stored size: 402 Bytes

Contents

# frozen_string_literal: true

module Kafka
  class Murmur2Hash
    SEED = [0x9747b28c].pack('L')

    def load
      require 'digest/murmurhash'
    rescue LoadError
      raise LoadError, "using murmur2 hashing requires adding a dependency on the `digest-murmurhash` gem to your Gemfile."
    end

    def hash(value)
      ::Digest::MurmurHash2.rawdigest(value, SEED) & 0x7fffffff
    end
  end
end

Version data entries

9 entries across 9 versions & 3 rubygems

Version Path
ruby-kafka-1.5.0 lib/kafka/murmur2_hash.rb
ruby-kafka-aws-iam-1.4.5 lib/kafka/murmur2_hash.rb
ruby-kafka-aws-iam-1.4.4 lib/kafka/murmur2_hash.rb
ruby-kafka-aws-iam-1.4.3 lib/kafka/murmur2_hash.rb
ruby-kafka-aws-iam-1.4.2 lib/kafka/murmur2_hash.rb
ruby-kafka-aws-iam-1.4.1 lib/kafka/murmur2_hash.rb
ruby-kafka-1.4.0 lib/kafka/murmur2_hash.rb
ruby-kafka-temp-fork-0.0.2 lib/kafka/murmur2_hash.rb
ruby-kafka-temp-fork-0.0.1 lib/kafka/murmur2_hash.rb