Sha256: 8ab6c8ead85a725198c13f53f7fdd3323553d137111794eb6fadfbf1634ed7b9

Contents?: true

Size: 930 Bytes

Versions: 8

Compression:

Stored size: 930 Bytes

Contents

'use strict';
var intSize = 4;
var zeroBuffer = new Buffer(intSize); zeroBuffer.fill(0);
var chrsz = 8;

function toArray(buf, bigEndian) {
  if ((buf.length % intSize) !== 0) {
    var len = buf.length + (intSize - (buf.length % intSize));
    buf = Buffer.concat([buf, zeroBuffer], len);
  }

  var arr = [];
  var fn = bigEndian ? buf.readInt32BE : buf.readInt32LE;
  for (var i = 0; i < buf.length; i += intSize) {
    arr.push(fn.call(buf, i));
  }
  return arr;
}

function toBuffer(arr, size, bigEndian) {
  var buf = new Buffer(size);
  var fn = bigEndian ? buf.writeInt32BE : buf.writeInt32LE;
  for (var i = 0; i < arr.length; i++) {
    fn.call(buf, arr[i], i * 4, true);
  }
  return buf;
}

function hash(buf, fn, hashSize, bigEndian) {
  if (!Buffer.isBuffer(buf)) buf = new Buffer(buf);
  var arr = fn(toArray(buf, bigEndian), buf.length * chrsz);
  return toBuffer(arr, hashSize, bigEndian);
}
exports.hash = hash;

Version data entries

8 entries across 8 versions & 3 rubygems

Version Path
lanes-0.8.0 node_modules/create-hash/helpers.js
minimum_viable_product-0.0.11 test/dummy/node_modules/create-hash/helpers.js
brwy_rails-0.0.6 test/dummy/node_modules/create-hash/helpers.js
brwy_rails-0.0.5 test/dummy/node_modules/create-hash/helpers.js
brwy_rails-0.0.4 test/dummy/node_modules/create-hash/helpers.js
brwy_rails-0.0.3 test/dummy/node_modules/create-hash/helpers.js
brwy_rails-0.0.2 test/dummy/node_modules/create-hash/helpers.js
brwy_rails-0.0.1 test/dummy/node_modules/create-hash/helpers.js