Ruby wrapper for xxHash
gem install xxhash
require 'xxhash'
text = "test"
seed = 12345
XXhash.xxh32(text, seed) # => 3834992036If you do not provide a seed, it will use the default value 0.
You can use it with IO objects too:
XXhash.xxh32_stream(StringIO.new('test'), 123) # => 2758658570You can use it with file path directly, avoiding costly ruby-related operations.
XXhash.xxh32_file(__FILE__)Note that you can also pass a chunk size as third param (it's 32 bytes by default)
XXH64 is also supported: you can use xxh64, xxh64_stream, .xxh64_file.
- MRI 3.1+
Note: It doesn't work on JRuby as it uses C extension.
Version 0.7.0 is equal to 0.8.1
- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request
Copyright (c) 2024 Vasiliy Ermolovich. See LICENSE.txt for further details.