@blackglory/structures 0.10.18 → 0.10.19

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.
@@ -25,20 +25,20 @@ class BitSet {
25
25
  - (maxArrayLength * this.bitsPerElement - this.length);
26
26
  const lastIndex = maxArrayLength - 1;
27
27
  for (let index = 0; index < lastIndex; index++) {
28
- const element = this.array[index];
28
+ let element = this.array[index];
29
29
  for (let bit = 0; bit < this.bitsPerElement; bit++) {
30
- const mask = this.getMask(bit);
31
- if ((element & mask) === mask) {
30
+ if (element & 1) {
32
31
  yield index * this.bitsPerElement + bit;
33
32
  }
33
+ element >>= 1;
34
34
  }
35
35
  }
36
- const lastElement = this.array[maxArrayLength - 1];
36
+ let lastElement = this.array[maxArrayLength - 1];
37
37
  for (let bit = 0; bit < remainder; bit++) {
38
- const mask = this.getMask(bit);
39
- if ((lastElement & mask) === mask) {
38
+ if (lastElement & 1) {
40
39
  yield lastIndex * this.bitsPerElement + bit;
41
40
  }
41
+ lastElement >>= 1;
42
42
  }
43
43
  }
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bit-set.js","sourceRoot":"","sources":["../../src/bit-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bit-set.js","sourceRoot":"","sources":["../../src/bit-set.ts"],"names":[],"mappings":";;;AAAA,+CAA2C;AAE3C,MAAa,MAAM;IAKjB,YAAoB,iBAAyB,CAAC;QAA1B,mBAAc,GAAd,cAAc,CAAY;QAJtC,UAAK,GAAa,EAAE,CAAA;QACpB,WAAM,GAAG,CAAC,CAAA;QACV,UAAK,GAAG,CAAC,CAAA;IAEgC,CAAC;IAElD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IAED,CAAE,MAAM;QACN,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,CAAA;YACnE,MAAM,SAAS,GACb,IAAI,CAAC,cAAc;kBACnB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YAEtD,MAAM,SAAS,GAAG,cAAc,GAAG,CAAC,CAAA;YACpC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,EAAE;gBAC9C,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAC/B,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,EAAE;oBAClD,IAAI,OAAO,GAAG,CAAC,EAAE;wBACf,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,GAAG,GAAG,CAAA;qBACxC;oBACD,OAAO,KAAK,CAAC,CAAA;iBACd;aACF;YAED,IAAI,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAA;YAChD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,EAAE,GAAG,EAAE,EAAE;gBACxC,IAAI,WAAW,GAAG,CAAC,EAAE;oBACnB,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,GAAG,GAAG,CAAA;iBAC5C;gBACD,WAAW,KAAK,CAAC,CAAA;aAClB;SACF;IACH,CAAC;IAED,kBAAkB;QAChB,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YACxC,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE;gBACvC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAA;aACtE;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;aACpB;SACF;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,GAAG,CAAC,KAAa;;QACf,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAE7C,OAAO,CAAC,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mCAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAA;IACnD,CAAC;IAED,GAAG,CAAC,KAAa;;QACf,IAAA,eAAM,EAAC,KAAK,IAAI,CAAC,EAAE,0CAA0C,CAAC,CAAA;QAC9D,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YACxB,IAAI,CAAC,MAAM,GAAG,KAAK,GAAG,CAAC,CAAA;SACxB;QAED,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAE7C,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mCAAI,CAAC,CAAA;QACtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,IAAI,CAAA;QAElC,MAAM,KAAK,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,CAAA;QACvC,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,KAAK,EAAE,CAAA;SACb;IACH,CAAC;IAED,MAAM,CAAC,KAAa;;QAClB,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAE7C,MAAM,OAAO,GAAG,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mCAAI,CAAC,CAAC,CAAA;QACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,CAAA;QAEnC,MAAM,OAAO,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,CAAA;QACzC,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,KAAK,EAAE,CAAA;SACb;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK;QACH,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG;YACpC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;SAClB;IACH,CAAC;IAEO,WAAW,CAAC,KAAa;QAC/B,MAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC,cAAc,CAAA;QAC7C,MAAM,QAAQ,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,cAAc,CAAA;QAC1D,MAAM,KAAK,GAAG,QAAQ,CAAA;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACpC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACtB,CAAC;IAGO,OAAO,CAAC,KAAa;QAC3B,OAAO,CAAC,IAAI,KAAK,CAAA;IACnB,CAAC;CACF;AAnHD,wBAmHC"}
@@ -25,20 +25,20 @@ class TypedBitSet {
25
25
  - (maxArrayLength * this.bitsPerElement - this.length);
26
26
  const lastIndex = maxArrayLength - 1;
27
27
  for (let index = 0; index < lastIndex; index++) {
28
- const element = this.array.internalTypedArray[index];
28
+ let element = this.array.internalTypedArray[index];
29
29
  for (let bit = 0; bit < this.bitsPerElement; bit++) {
30
- const mask = this.getMask(bit);
31
- if ((element & mask) === mask) {
30
+ if (element & 1) {
32
31
  yield index * this.bitsPerElement + bit;
33
32
  }
33
+ element >>= 1;
34
34
  }
35
35
  }
36
- const lastElement = this.array.internalTypedArray[maxArrayLength - 1];
36
+ let lastElement = this.array.internalTypedArray[maxArrayLength - 1];
37
37
  for (let bit = 0; bit < remainder; bit++) {
38
- const mask = this.getMask(bit);
39
- if ((lastElement & mask) === mask) {
38
+ if (lastElement & 1) {
40
39
  yield lastIndex * this.bitsPerElement + bit;
41
40
  }
41
+ lastElement >>= 1;
42
42
  }
43
43
  }
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typed-bit-set.js","sourceRoot":"","sources":["../../src/typed-bit-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed-bit-set.js","sourceRoot":"","sources":["../../src/typed-bit-set.ts"],"names":[],"mappings":"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"}
@@ -25,20 +25,20 @@ class BitSet {
25
25
  - (maxArrayLength * this.bitsPerElement - this.length);
26
26
  const lastIndex = maxArrayLength - 1;
27
27
  for (let index = 0; index < lastIndex; index++) {
28
- const element = this.array[index];
28
+ let element = this.array[index];
29
29
  for (let bit = 0; bit < this.bitsPerElement; bit++) {
30
- const mask = this.getMask(bit);
31
- if ((element & mask) === mask) {
30
+ if (element & 1) {
32
31
  yield index * this.bitsPerElement + bit;
33
32
  }
33
+ element >>= 1;
34
34
  }
35
35
  }
36
- const lastElement = this.array[maxArrayLength - 1];
36
+ let lastElement = this.array[maxArrayLength - 1];
37
37
  for (let bit = 0; bit < remainder; bit++) {
38
- const mask = this.getMask(bit);
39
- if ((lastElement & mask) === mask) {
38
+ if (lastElement & 1) {
40
39
  yield lastIndex * this.bitsPerElement + bit;
41
40
  }
41
+ lastElement >>= 1;
42
42
  }
43
43
  }
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bit-set.js","sourceRoot":"","sources":["../../src/bit-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bit-set.js","sourceRoot":"","sources":["../../src/bit-set.ts"],"names":[],"mappings":"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"}
@@ -25,20 +25,20 @@ class TypedBitSet {
25
25
  - (maxArrayLength * this.bitsPerElement - this.length);
26
26
  const lastIndex = maxArrayLength - 1;
27
27
  for (let index = 0; index < lastIndex; index++) {
28
- const element = this.array.internalTypedArray[index];
28
+ let element = this.array.internalTypedArray[index];
29
29
  for (let bit = 0; bit < this.bitsPerElement; bit++) {
30
- const mask = this.getMask(bit);
31
- if ((element & mask) === mask) {
30
+ if (element & 1) {
32
31
  yield index * this.bitsPerElement + bit;
33
32
  }
33
+ element >>= 1;
34
34
  }
35
35
  }
36
- const lastElement = this.array.internalTypedArray[maxArrayLength - 1];
36
+ let lastElement = this.array.internalTypedArray[maxArrayLength - 1];
37
37
  for (let bit = 0; bit < remainder; bit++) {
38
- const mask = this.getMask(bit);
39
- if ((lastElement & mask) === mask) {
38
+ if (lastElement & 1) {
40
39
  yield lastIndex * this.bitsPerElement + bit;
41
40
  }
41
+ lastElement >>= 1;
42
42
  }
43
43
  }
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typed-bit-set.js","sourceRoot":"","sources":["../../src/typed-bit-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed-bit-set.js","sourceRoot":"","sources":["../../src/typed-bit-set.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blackglory/structures",
3
- "version": "0.10.18",
3
+ "version": "0.10.19",
4
4
  "description": "",
5
5
  "files": [
6
6
  "lib",