iw6-mod/deps/protobuf/js/experimental/runtime/kernel/uint8arrays.js
2024-02-27 01:34:37 -05:00

29 lines
671 B
JavaScript

/**
* @fileoverview Helper methods for Uint8Arrays.
*/
goog.module('protobuf.binary.uint8arrays');
/**
* Combines multiple bytes arrays (either Uint8Array or number array whose
* values are bytes) into a single Uint8Array.
* @param {!Array<!Uint8Array>|!Array<!Array<number>>} arrays
* @return {!Uint8Array}
*/
function concatenateByteArrays(arrays) {
let totalLength = 0;
for (const array of arrays) {
totalLength += array.length;
}
const result = new Uint8Array(totalLength);
let offset = 0;
for (const array of arrays) {
result.set(array, offset);
offset += array.length;
}
return result;
}
exports = {
concatenateByteArrays,
};