UNPKG

@klayr/utils

Version:

Library containing generic utility functions for use with Klayr-related software

23 lines 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.bufferArrayUniqueItems = exports.isBufferArrayOrdered = exports.bufferArraySubtract = exports.bufferArrayEqual = exports.bufferArrayContainsSome = exports.bufferArrayContains = exports.bufferArrayIncludes = void 0; const buffer_set_1 = require("../data_structures/buffer_set"); const bufferArrayIncludes = (arr, val) => arr.find(a => a.equals(val)) !== undefined; exports.bufferArrayIncludes = bufferArrayIncludes; const bufferArrayContains = (arr1, arr2) => arr2.every(val => (0, exports.bufferArrayIncludes)(arr1, val)); exports.bufferArrayContains = bufferArrayContains; const bufferArrayContainsSome = (arr1, arr2) => arr2.some(val => (0, exports.bufferArrayIncludes)(arr1, val)); exports.bufferArrayContainsSome = bufferArrayContainsSome; const bufferArrayEqual = (arr1, arr2) => arr1.length === arr2.length && arr1.every((val, index) => val.equals(arr2[index])); exports.bufferArrayEqual = bufferArrayEqual; const bufferArraySubtract = (arr1, arr2) => arr1.filter(a => !(0, exports.bufferArrayIncludes)(arr2, a)); exports.bufferArraySubtract = bufferArraySubtract; const isBufferArrayOrdered = (arr1) => { const sortedArray = [...arr1]; sortedArray.sort((a, b) => a.compare(b)); return (0, exports.bufferArrayEqual)(arr1, sortedArray); }; exports.isBufferArrayOrdered = isBufferArrayOrdered; const bufferArrayUniqueItems = (arr1) => arr1.length === new buffer_set_1.BufferSet([...arr1]).size; exports.bufferArrayUniqueItems = bufferArrayUniqueItems; //# sourceMappingURL=buffer_array.js.map