@blackglory/structures 0.10.21 → 0.10.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/es2015/index.min.mjs +1 -1
- package/dist/es2015/index.min.mjs.map +1 -1
- package/dist/es2015/index.mjs +10 -21
- package/dist/es2015/index.mjs.map +1 -1
- package/dist/es2015/index.umd.js +10 -21
- package/dist/es2015/index.umd.js.map +1 -1
- package/dist/es2015/index.umd.min.js +1 -1
- package/dist/es2015/index.umd.min.js.map +1 -1
- package/dist/es2018/index.min.mjs +1 -1
- package/dist/es2018/index.min.mjs.map +1 -1
- package/dist/es2018/index.mjs +10 -21
- package/dist/es2018/index.mjs.map +1 -1
- package/dist/es2018/index.umd.js +10 -21
- package/dist/es2018/index.umd.js.map +1 -1
- package/dist/es2018/index.umd.min.js +1 -1
- package/dist/es2018/index.umd.min.js.map +1 -1
- package/lib/es2015/bit-set.js +1 -1
- package/lib/es2015/bit-set.js.map +1 -1
- package/lib/es2015/typed-bit-set.js +9 -17
- package/lib/es2015/typed-bit-set.js.map +1 -1
- package/lib/es2018/bit-set.js +1 -1
- package/lib/es2018/bit-set.js.map +1 -1
- package/lib/es2018/typed-bit-set.js +9 -17
- package/lib/es2018/typed-bit-set.js.map +1 -1
- package/package.json +1 -1
- package/lib/es2015/utils/bit-scan.d.ts +0 -1
- package/lib/es2015/utils/bit-scan.js +0 -14
- package/lib/es2015/utils/bit-scan.js.map +0 -1
- package/lib/es2018/utils/bit-scan.d.ts +0 -1
- package/lib/es2018/utils/bit-scan.js +0 -14
- package/lib/es2018/utils/bit-scan.js.map +0 -1
package/dist/es2015/index.mjs
CHANGED
|
@@ -6232,7 +6232,7 @@ function trailingZeros(value) {
|
|
|
6232
6232
|
}
|
|
6233
6233
|
|
|
6234
6234
|
class BitSet {
|
|
6235
|
-
constructor(bitsPerElement =
|
|
6235
|
+
constructor(bitsPerElement = 8) {
|
|
6236
6236
|
this.bitsPerElement = bitsPerElement;
|
|
6237
6237
|
this.array = [];
|
|
6238
6238
|
this.length = 0;
|
|
@@ -6337,8 +6337,8 @@ class TypedBitSet {
|
|
|
6337
6337
|
const bitsPerElement = array.BYTES_PER_ELEMENT * 8;
|
|
6338
6338
|
es2018Exports$1.assert(Number.isInteger(bitsPerElement), 'The parameter bitsPerElement must be an integer');
|
|
6339
6339
|
es2018Exports$1.assert(bitsPerElement > 0, 'The parameter bitsPerElement must be greater than 0');
|
|
6340
|
-
// `
|
|
6341
|
-
es2018Exports$1.assert(bitsPerElement <=
|
|
6340
|
+
// `31`是该数据结构中能够处理的最大值
|
|
6341
|
+
es2018Exports$1.assert(bitsPerElement <= 31, 'The mask of bitsPerElement must be less than or equal to 31');
|
|
6342
6342
|
this.bitsPerElement = bitsPerElement;
|
|
6343
6343
|
}
|
|
6344
6344
|
get [Symbol.toStringTag]() {
|
|
@@ -6354,26 +6354,15 @@ class TypedBitSet {
|
|
|
6354
6354
|
if (this.length > 0) {
|
|
6355
6355
|
// maxArrayLength = Math.ceil(this.length / this.bitsPerElement)
|
|
6356
6356
|
const maxArrayLength = ~~(this.length / this.bitsPerElement) + 1;
|
|
6357
|
-
|
|
6358
|
-
- (maxArrayLength * this.bitsPerElement - this.length);
|
|
6359
|
-
const lastIndex = maxArrayLength - 1;
|
|
6360
|
-
for (let index = 0; index < lastIndex; index++) {
|
|
6357
|
+
for (let index = 0; index < maxArrayLength; index++) {
|
|
6361
6358
|
let element = this.array.internalTypedArray[index];
|
|
6362
|
-
|
|
6363
|
-
|
|
6364
|
-
|
|
6365
|
-
|
|
6366
|
-
|
|
6367
|
-
element >>= 1;
|
|
6368
|
-
}
|
|
6369
|
-
}
|
|
6370
|
-
let lastElement = this.array.internalTypedArray[maxArrayLength - 1];
|
|
6371
|
-
for (let bit = 0; bit < remainder; bit++) {
|
|
6372
|
-
// if (isOdd(lastElement)) {
|
|
6373
|
-
if (lastElement % 2) {
|
|
6374
|
-
yield lastIndex * this.bitsPerElement + bit;
|
|
6359
|
+
let offset = 0;
|
|
6360
|
+
let indexOfBit;
|
|
6361
|
+
while ((indexOfBit = trailingZeros(element)) !== 32) {
|
|
6362
|
+
yield index * this.bitsPerElement + offset + indexOfBit;
|
|
6363
|
+
offset += indexOfBit + 1;
|
|
6364
|
+
element >>= indexOfBit + 1;
|
|
6375
6365
|
}
|
|
6376
|
-
lastElement >>= 1;
|
|
6377
6366
|
}
|
|
6378
6367
|
}
|
|
6379
6368
|
}
|