| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- 'use strict';
-
- Object.defineProperty(exports, '__esModule', { value: true });
-
- /* eslint-disable */
- // murmurhash2 via https://github.com/garycourt/murmurhash-js/blob/master/murmurhash2_gc.js
- function murmurhash2_32_gc(str) {
- var l = str.length,
- h = l ^ l,
- i = 0,
- k;
-
- while (l >= 4) {
- k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
- k = (k & 0xffff) * 0x5bd1e995 + (((k >>> 16) * 0x5bd1e995 & 0xffff) << 16);
- k ^= k >>> 24;
- k = (k & 0xffff) * 0x5bd1e995 + (((k >>> 16) * 0x5bd1e995 & 0xffff) << 16);
- h = (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0x5bd1e995 & 0xffff) << 16) ^ k;
- l -= 4;
- ++i;
- }
-
- switch (l) {
- case 3:
- h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
-
- case 2:
- h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
-
- case 1:
- h ^= str.charCodeAt(i) & 0xff;
- h = (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0x5bd1e995 & 0xffff) << 16);
- }
-
- h ^= h >>> 13;
- h = (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0x5bd1e995 & 0xffff) << 16);
- h ^= h >>> 15;
- return (h >>> 0).toString(36);
- }
-
- exports.default = murmurhash2_32_gc;
|