Sha256: 2fc7b8f39eaf4a5fc9aa3e3df54088d68ea69fd630c95d960a8b65772b3c6c32
Contents?: true
Size: 715 Bytes
Versions: 2
Compression:
Stored size: 715 Bytes
Contents
/* HashKit * Copyright (C) 2009 Brian Aker * All rights reserved. * * Use and distribution licensed under the BSD license. See * the COPYING file in the parent directory for full text. */ /* This has is Jenkin's "One at A time Hash". http://en.wikipedia.org/wiki/Jenkins_hash_function */ #include <libhashkit/common.h> uint32_t hashkit_one_at_a_time(const char *key, size_t key_length, void *context) { const char *ptr= key; uint32_t value= 0; (void)context; while (key_length--) { uint32_t val= (uint32_t) *ptr++; value += val; value += (value << 10); value ^= (value >> 6); } value += (value << 3); value ^= (value >> 11); value += (value << 15); return value; }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
couchbase-memcached-1.2.9 | ext/libmemcached-0.50/libhashkit/one_at_a_time.cc |
couchbase-memcached-1.2.8 | ext/libmemcached-0.50/libhashkit/one_at_a_time.cc |