@blackglory/structures 0.15.1 → 0.15.3

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.
Files changed (57) hide show
  1. package/lib/bit-set/bit-set.d.ts +1 -1
  2. package/lib/bit-set/bit-set.js +6 -6
  3. package/lib/bit-set/bit-set.js.map +1 -1
  4. package/lib/bit-set/dynamic-typed-bit-set.d.ts +1 -1
  5. package/lib/bit-set/dynamic-typed-bit-set.js +5 -5
  6. package/lib/bit-set/dynamic-typed-bit-set.js.map +1 -1
  7. package/lib/bit-set/resizable-typed-bit-set.d.ts +1 -1
  8. package/lib/bit-set/resizable-typed-bit-set.js +5 -5
  9. package/lib/bit-set/resizable-typed-bit-set.js.map +1 -1
  10. package/lib/bit-set/typed-bit-set.d.ts +1 -1
  11. package/lib/bit-set/typed-bit-set.js +5 -5
  12. package/lib/bit-set/typed-bit-set.js.map +1 -1
  13. package/lib/dynamic-typed-array.d.ts +1 -1
  14. package/lib/dynamic-typed-array.js +14 -14
  15. package/lib/dynamic-typed-array.js.map +1 -1
  16. package/lib/resizable-typed-array.d.ts +1 -1
  17. package/lib/resizable-typed-array.js +14 -14
  18. package/lib/resizable-typed-array.js.map +1 -1
  19. package/lib/sparse-map/typed-clean-sparse-map-lite.d.ts +1 -1
  20. package/lib/sparse-map/typed-clean-sparse-map-lite.js +8 -8
  21. package/lib/sparse-map/typed-clean-sparse-map-lite.js.map +1 -1
  22. package/lib/sparse-map/typed-clean-sparse-map.d.ts +1 -1
  23. package/lib/sparse-map/typed-clean-sparse-map.js +15 -9
  24. package/lib/sparse-map/typed-clean-sparse-map.js.map +1 -1
  25. package/lib/sparse-map/typed-sparse-map-lite.d.ts +1 -1
  26. package/lib/sparse-map/typed-sparse-map-lite.js +13 -13
  27. package/lib/sparse-map/typed-sparse-map-lite.js.map +1 -1
  28. package/lib/sparse-map/typed-sparse-map.d.ts +1 -1
  29. package/lib/sparse-map/typed-sparse-map.js +13 -13
  30. package/lib/sparse-map/typed-sparse-map.js.map +1 -1
  31. package/lib/sparse-set/typed-clean-sparse-set-lite.d.ts +1 -1
  32. package/lib/sparse-set/typed-clean-sparse-set-lite.js +6 -6
  33. package/lib/sparse-set/typed-clean-sparse-set-lite.js.map +1 -1
  34. package/lib/sparse-set/typed-clean-sparse-set.d.ts +1 -1
  35. package/lib/sparse-set/typed-clean-sparse-set.js +6 -6
  36. package/lib/sparse-set/typed-clean-sparse-set.js.map +1 -1
  37. package/lib/sparse-set/typed-sparse-set-lite.d.ts +1 -1
  38. package/lib/sparse-set/typed-sparse-set-lite.js +8 -8
  39. package/lib/sparse-set/typed-sparse-set-lite.js.map +1 -1
  40. package/lib/sparse-set/typed-sparse-set.d.ts +1 -1
  41. package/lib/sparse-set/typed-sparse-set.js +8 -8
  42. package/lib/sparse-set/typed-sparse-set.js.map +1 -1
  43. package/package.json +1 -1
  44. package/src/bit-set/bit-set.ts +6 -6
  45. package/src/bit-set/dynamic-typed-bit-set.ts +5 -5
  46. package/src/bit-set/resizable-typed-bit-set.ts +5 -5
  47. package/src/bit-set/typed-bit-set.ts +5 -5
  48. package/src/dynamic-typed-array.ts +14 -14
  49. package/src/resizable-typed-array.ts +14 -14
  50. package/src/sparse-map/typed-clean-sparse-map-lite.ts +8 -8
  51. package/src/sparse-map/typed-clean-sparse-map.ts +14 -9
  52. package/src/sparse-map/typed-sparse-map-lite.ts +13 -13
  53. package/src/sparse-map/typed-sparse-map.ts +13 -13
  54. package/src/sparse-set/typed-clean-sparse-set-lite.ts +6 -6
  55. package/src/sparse-set/typed-clean-sparse-set.ts +6 -6
  56. package/src/sparse-set/typed-sparse-set-lite.ts +8 -8
  57. package/src/sparse-set/typed-sparse-set.ts +8 -8
@@ -4,12 +4,12 @@ import { getMaxValueOfUnsignedTypedArray, getMaxValueOfUnsignedTypedArrayConstru
4
4
  export class TypedSparseSet {
5
5
  dense;
6
6
  sparse;
7
- #length = 0;
7
+ _length = 0;
8
8
  get [Symbol.toStringTag]() {
9
9
  return this.constructor.name;
10
10
  }
11
11
  get size() {
12
- return this.#length;
12
+ return this._length;
13
13
  }
14
14
  constructor(array) {
15
15
  assert(!array.buffer.resizable, 'The array buffer must not be resizable');
@@ -38,20 +38,20 @@ export class TypedSparseSet {
38
38
  return this.values();
39
39
  }
40
40
  *values() {
41
- for (let i = 0; i < this.#length; i++) {
41
+ for (let i = 0; i < this._length; i++) {
42
42
  yield this.dense[i];
43
43
  }
44
44
  }
45
45
  has(value) {
46
46
  const index = this.sparse[value];
47
47
  return index !== undefined
48
- && index < this.#length
48
+ && index < this._length
49
49
  && index < this.dense.length
50
50
  && this.dense[index] === value;
51
51
  }
52
52
  add(value) {
53
53
  if (!this.has(value)) {
54
- const index = this.#length++;
54
+ const index = this._length++;
55
55
  this.dense[index] = value;
56
56
  this.sparse[value] = index;
57
57
  }
@@ -59,10 +59,10 @@ export class TypedSparseSet {
59
59
  delete(value) {
60
60
  const index = this.sparse[value];
61
61
  if (index !== undefined &&
62
- index < this.#length &&
62
+ index < this._length &&
63
63
  index < this.dense.length &&
64
64
  this.dense[index] === value) {
65
- const lastIndex = --this.#length;
65
+ const lastIndex = --this._length;
66
66
  const lastValue = this.dense[lastIndex];
67
67
  if (value !== lastValue) {
68
68
  this.dense[index] = lastValue;
@@ -75,7 +75,7 @@ export class TypedSparseSet {
75
75
  }
76
76
  }
77
77
  clear() {
78
- this.#length = 0;
78
+ this._length = 0;
79
79
  }
80
80
  }
81
81
  //# sourceMappingURL=typed-sparse-set.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typed-sparse-set.js","sourceRoot":"","sources":["../../src/sparse-set/typed-sparse-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed-sparse-set.js","sourceRoot":"","sources":["../../src/sparse-set/typed-sparse-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.15.1",
3
+ "version": "0.15.3",
4
4
  "description": "",
5
5
  "files": [
6
6
  "lib",
@@ -4,7 +4,7 @@ import { trailingZeros } from '@utils/trailing-zeros.js'
4
4
  export class BitSet implements Iterable<number> {
5
5
  private array: Array<number | undefined> = []
6
6
  private length = 0
7
- #size = 0
7
+ private _size = 0
8
8
 
9
9
  private isBitsPerElementPowerOfTwo: boolean = false
10
10
  private quotientShift = 0
@@ -39,7 +39,7 @@ export class BitSet implements Iterable<number> {
39
39
  }
40
40
 
41
41
  get size(): number {
42
- return this.#size
42
+ return this._size
43
43
  }
44
44
 
45
45
  [Symbol.iterator](): IterableIterator<number> {
@@ -89,7 +89,7 @@ export class BitSet implements Iterable<number> {
89
89
  this.array[index] = element | mask
90
90
 
91
91
  const added = (element & mask) !== mask
92
- if (added) this.#size++
92
+ if (added) this._size++
93
93
 
94
94
  if (value >= this.length) this.length = value + 1
95
95
 
@@ -103,13 +103,13 @@ export class BitSet implements Iterable<number> {
103
103
  this.array[index] = element & ~mask
104
104
 
105
105
  const deleted = (element & mask) === mask
106
- if (deleted) this.#size--
106
+ if (deleted) this._size--
107
107
 
108
108
  return deleted
109
109
  }
110
110
 
111
111
  clear(): void {
112
- this.#size = 0
112
+ this._size = 0
113
113
  this.length = 0
114
114
  this.array.length = 0
115
115
  }
@@ -119,7 +119,7 @@ export class BitSet implements Iterable<number> {
119
119
 
120
120
  clone.array = [...this.array]
121
121
  clone.length = this.length
122
- clone.#size = this.#size
122
+ clone._size = this._size
123
123
 
124
124
  return clone
125
125
  }
@@ -6,7 +6,7 @@ import { trailingZeros } from '@utils/trailing-zeros.js'
6
6
  export class DynamicTypedBitSet implements Iterable<number> {
7
7
  private bitsPerElement: number
8
8
  private length = 0
9
- #size = 0
9
+ private _size = 0
10
10
 
11
11
  private quotientShift = 0
12
12
  private remainderMask = 0
@@ -16,7 +16,7 @@ export class DynamicTypedBitSet implements Iterable<number> {
16
16
  }
17
17
 
18
18
  get size(): number {
19
- return this.#size
19
+ return this._size
20
20
  }
21
21
 
22
22
  constructor(private array: DynamicTypedArray<UnsignedTypedArrayConstructor>) {
@@ -89,7 +89,7 @@ export class DynamicTypedBitSet implements Iterable<number> {
89
89
  this.array.set(index, element | mask)
90
90
 
91
91
  const added = (element & mask) !== mask
92
- if (added) this.#size++
92
+ if (added) this._size++
93
93
 
94
94
  if (value >= this.length) this.length = value + 1
95
95
 
@@ -103,13 +103,13 @@ export class DynamicTypedBitSet implements Iterable<number> {
103
103
  this.array.set(index, element & ~mask)
104
104
 
105
105
  const deleted = (element & mask) === mask
106
- if (deleted) this.#size--
106
+ if (deleted) this._size--
107
107
 
108
108
  return deleted
109
109
  }
110
110
 
111
111
  clear(): void {
112
- this.#size = 0
112
+ this._size = 0
113
113
  this.array.clear()
114
114
  }
115
115
 
@@ -6,7 +6,7 @@ import { trailingZeros } from '@utils/trailing-zeros.js'
6
6
  export class ResizableTypedBitSet implements Iterable<number> {
7
7
  private bitsPerElement: number
8
8
  private length = 0
9
- #size = 0
9
+ private _size = 0
10
10
 
11
11
  private quotientShift = 0
12
12
  private remainderMask = 0
@@ -16,7 +16,7 @@ export class ResizableTypedBitSet implements Iterable<number> {
16
16
  }
17
17
 
18
18
  get size(): number {
19
- return this.#size
19
+ return this._size
20
20
  }
21
21
 
22
22
  constructor(private array: ResizableTypedArray<UnsignedTypedArrayConstructor>) {
@@ -88,7 +88,7 @@ export class ResizableTypedBitSet implements Iterable<number> {
88
88
  this.array.set(index, element | mask)
89
89
 
90
90
  const added = (element & mask) !== mask
91
- if (added) this.#size++
91
+ if (added) this._size++
92
92
 
93
93
  if (value >= this.length) this.length = value + 1
94
94
 
@@ -102,13 +102,13 @@ export class ResizableTypedBitSet implements Iterable<number> {
102
102
  this.array.set(index, element & ~mask)
103
103
 
104
104
  const deleted = (element & mask) === mask
105
- if (deleted) this.#size--
105
+ if (deleted) this._size--
106
106
 
107
107
  return deleted
108
108
  }
109
109
 
110
110
  clear(): void {
111
- this.#size = 0
111
+ this._size = 0
112
112
  this.length = 0
113
113
  this.array.clear()
114
114
  }
@@ -5,7 +5,7 @@ import { trailingZeros } from '@utils/trailing-zeros.js'
5
5
  export class TypedBitSet implements Iterable<number> {
6
6
  private bitsPerElement: number
7
7
  private length = 0
8
- #size = 0
8
+ private _size = 0
9
9
 
10
10
  private quotientShift = 0
11
11
  private remainderMask = 0
@@ -19,7 +19,7 @@ export class TypedBitSet implements Iterable<number> {
19
19
  }
20
20
 
21
21
  get size(): number {
22
- return this.#size
22
+ return this._size
23
23
  }
24
24
 
25
25
  constructor(private array: UnsignedTypedArray) {
@@ -91,7 +91,7 @@ export class TypedBitSet implements Iterable<number> {
91
91
  this.array[index] = element | mask
92
92
 
93
93
  const added = (element & mask) !== mask
94
- if (added) this.#size++
94
+ if (added) this._size++
95
95
 
96
96
  if (value >= this.length) this.length = value + 1
97
97
 
@@ -105,13 +105,13 @@ export class TypedBitSet implements Iterable<number> {
105
105
  this.array[index] = element & ~mask
106
106
 
107
107
  const deleted = (element & mask) === mask
108
- if (deleted) this.#size--
108
+ if (deleted) this._size--
109
109
 
110
110
  return deleted
111
111
  }
112
112
 
113
113
  clear(): void {
114
- this.#size = 0
114
+ this._size = 0
115
115
  this.length = 0
116
116
  this.array.fill(0)
117
117
  }
@@ -17,7 +17,7 @@ export class DynamicTypedArray<
17
17
  readonly BYTES_PER_ELEMENT: number
18
18
  readonly fillValue: number
19
19
 
20
- #length: number = 0
20
+ private _length: number = 0
21
21
 
22
22
  get [Symbol.toStringTag](): string {
23
23
  return this.constructor.name
@@ -38,7 +38,7 @@ export class DynamicTypedArray<
38
38
  * 数组逻辑上的长度, 总是小于或等于capacity.
39
39
  */
40
40
  get length(): number {
41
- return this.#length
41
+ return this._length
42
42
  }
43
43
 
44
44
  constructor(
@@ -68,7 +68,7 @@ export class DynamicTypedArray<
68
68
  }
69
69
 
70
70
  * values(): IterableIterator<number> {
71
- for (let i = 0; i < this.#length; i++) {
71
+ for (let i = 0; i < this._length; i++) {
72
72
  yield this.array[i]
73
73
  }
74
74
  }
@@ -83,8 +83,8 @@ export class DynamicTypedArray<
83
83
  this.resize(newCapacity)
84
84
  }
85
85
 
86
- if (index >= this.#length) {
87
- this.#length = index + 1
86
+ if (index >= this._length) {
87
+ this._length = index + 1
88
88
  }
89
89
 
90
90
  this.array[index] = value
@@ -101,21 +101,21 @@ export class DynamicTypedArray<
101
101
  this.resize(newCapacity)
102
102
  }
103
103
 
104
- if (endIndex > this.#length) {
105
- this.#length = endIndex
104
+ if (endIndex > this._length) {
105
+ this._length = endIndex
106
106
  }
107
107
 
108
108
  this.array.set(values, index)
109
109
  }
110
110
 
111
111
  get(index: number): number | undefined {
112
- return index < this.#length
112
+ return index < this._length
113
113
  ? this.array[index]
114
114
  : undefined
115
115
  }
116
116
 
117
117
  push(...values: number[]): void {
118
- const newLength = this.#length + values.length
118
+ const newLength = this._length + values.length
119
119
  if (newLength > this.capacity) {
120
120
  const newCapacity = computeNewCapacity(
121
121
  this.capacity
@@ -126,14 +126,14 @@ export class DynamicTypedArray<
126
126
  }
127
127
 
128
128
  for (const value of values) {
129
- this.array[this.#length++] = value
129
+ this.array[this._length++] = value
130
130
  }
131
131
  }
132
132
 
133
133
  pop(): number | undefined {
134
- if (this.#length > 0) {
135
- const value = this.array[this.#length - 1]
136
- this.#length--
134
+ if (this._length > 0) {
135
+ const value = this.array[this._length - 1]
136
+ this._length--
137
137
 
138
138
  return value
139
139
  } else {
@@ -142,7 +142,7 @@ export class DynamicTypedArray<
142
142
  }
143
143
 
144
144
  clear(): void {
145
- this.#length = 0
145
+ this._length = 0
146
146
  }
147
147
 
148
148
  shrink(): void {
@@ -22,7 +22,7 @@ export class ResizableTypedArray<
22
22
  readonly internalTypedArray: TypedArrayOfConstructor<T>
23
23
  readonly fillValue: number
24
24
 
25
- #length: number = 0
25
+ private _length: number = 0
26
26
 
27
27
  get [Symbol.toStringTag](): string {
28
28
  return this.constructor.name
@@ -39,7 +39,7 @@ export class ResizableTypedArray<
39
39
  * 数组逻辑上的长度, 总是小于或等于capacity.
40
40
  */
41
41
  get length(): number {
42
- return this.#length
42
+ return this._length
43
43
  }
44
44
 
45
45
  constructor(
@@ -79,7 +79,7 @@ export class ResizableTypedArray<
79
79
  }
80
80
 
81
81
  * values(): IterableIterator<number> {
82
- for (let i = 0; i < this.#length; i++) {
82
+ for (let i = 0; i < this._length; i++) {
83
83
  yield this.array[i]
84
84
  }
85
85
  }
@@ -100,8 +100,8 @@ export class ResizableTypedArray<
100
100
  this.resize(newCapacity)
101
101
  }
102
102
 
103
- if (index >= this.#length) {
104
- this.#length = index + 1
103
+ if (index >= this._length) {
104
+ this._length = index + 1
105
105
  }
106
106
 
107
107
  this.array[index] = value
@@ -127,21 +127,21 @@ export class ResizableTypedArray<
127
127
  this.resize(newCapacity)
128
128
  }
129
129
 
130
- if (endIndex > this.#length) {
131
- this.#length = endIndex
130
+ if (endIndex > this._length) {
131
+ this._length = endIndex
132
132
  }
133
133
 
134
134
  this.array.set(values, index)
135
135
  }
136
136
 
137
137
  get(index: number): number | undefined {
138
- return index < this.#length
138
+ return index < this._length
139
139
  ? this.array[index]
140
140
  : undefined
141
141
  }
142
142
 
143
143
  push(...values: number[]): void {
144
- const newLength = this.#length + values.length
144
+ const newLength = this._length + values.length
145
145
  if (newLength > this.capacity) {
146
146
  assert(
147
147
  newLength <= this.maxCapacity
@@ -161,14 +161,14 @@ export class ResizableTypedArray<
161
161
  }
162
162
 
163
163
  for (const value of values) {
164
- this.array[this.#length++] = value
164
+ this.array[this._length++] = value
165
165
  }
166
166
  }
167
167
 
168
168
  pop(): number | undefined {
169
- if (this.#length > 0) {
170
- const value = this.array[this.#length - 1]
171
- this.#length--
169
+ if (this._length > 0) {
170
+ const value = this.array[this._length - 1]
171
+ this._length--
172
172
 
173
173
  return value
174
174
  } else {
@@ -177,7 +177,7 @@ export class ResizableTypedArray<
177
177
  }
178
178
 
179
179
  clear(): void {
180
- this.#length = 0
180
+ this._length = 0
181
181
  }
182
182
 
183
183
  shrink(): void {
@@ -8,7 +8,7 @@ export class TypedCleanSparseMapLite<
8
8
  private denseKeys: TypedArrayOfConstructor<K>
9
9
  private denseValues: TypedArrayOfConstructor<V>
10
10
  private sparse: Array<number | undefined> = []
11
- #length = 0
11
+ private _length = 0
12
12
 
13
13
  readonly internalKeyArray: TypedArrayOfConstructor<K, ArrayBuffer>
14
14
  readonly internalValueArray: TypedArrayOfConstructor<V, ArrayBuffer>
@@ -18,7 +18,7 @@ export class TypedCleanSparseMapLite<
18
18
  }
19
19
 
20
20
  get size(): number {
21
- return this.#length
21
+ return this._length
22
22
  }
23
23
 
24
24
  constructor(
@@ -40,7 +40,7 @@ export class TypedCleanSparseMapLite<
40
40
  }
41
41
 
42
42
  * entries(): IterableIterator<[key: number, value: number]> {
43
- for (let i = 0; i < this.#length; i++) {
43
+ for (let i = 0; i < this._length; i++) {
44
44
  yield [
45
45
  this.denseKeys[i]
46
46
  , this.denseValues[i]
@@ -49,13 +49,13 @@ export class TypedCleanSparseMapLite<
49
49
  }
50
50
 
51
51
  * keys(): IterableIterator<number> {
52
- for (let i = 0; i < this.#length; i++) {
52
+ for (let i = 0; i < this._length; i++) {
53
53
  yield this.denseKeys[i]
54
54
  }
55
55
  }
56
56
 
57
57
  * values(): IterableIterator<number> {
58
- for (let i = 0; i < this.#length; i++) {
58
+ for (let i = 0; i < this._length; i++) {
59
59
  yield this.denseValues[i]
60
60
  }
61
61
  }
@@ -82,7 +82,7 @@ export class TypedCleanSparseMapLite<
82
82
  if (index !== undefined) {
83
83
  this.denseValues[index] = value
84
84
  } else {
85
- const index = this.#length++
85
+ const index = this._length++
86
86
  this.denseKeys[index] = key
87
87
  this.denseValues[index] = value
88
88
  this.sparse[key] = index
@@ -94,7 +94,7 @@ export class TypedCleanSparseMapLite<
94
94
  if (index !== undefined) {
95
95
  this.sparse[key] = undefined
96
96
 
97
- const lastIndex = --this.#length
97
+ const lastIndex = --this._length
98
98
  const lastKey = this.denseKeys[lastIndex]
99
99
  const lastValue = this.denseValues[lastIndex]
100
100
  if (key !== lastKey) {
@@ -110,7 +110,7 @@ export class TypedCleanSparseMapLite<
110
110
  }
111
111
 
112
112
  clear(): void {
113
- this.#length = 0
113
+ this._length = 0
114
114
  this.sparse.length = 0
115
115
  }
116
116
  }
@@ -11,7 +11,7 @@ export class TypedCleanSparseMap<
11
11
  private denseValues: TypedArrayOfConstructor<V>
12
12
  private sparse: UnsignedTypedArray
13
13
  private readonly NULL: number
14
- #length = 0
14
+ private _length = 0
15
15
 
16
16
  readonly internalKeyArray: TypedArrayOfConstructor<K, ArrayBuffer>
17
17
  readonly internalValueArray: TypedArrayOfConstructor<V, ArrayBuffer>
@@ -21,7 +21,7 @@ export class TypedCleanSparseMap<
21
21
  }
22
22
 
23
23
  get size(): number {
24
- return this.#length
24
+ return this._length
25
25
  }
26
26
 
27
27
  constructor(
@@ -73,7 +73,7 @@ export class TypedCleanSparseMap<
73
73
  }
74
74
 
75
75
  * entries(): IterableIterator<[key: number, value: number]> {
76
- for (let i = 0; i < this.#length; i++) {
76
+ for (let i = 0; i < this._length; i++) {
77
77
  yield [
78
78
  this.denseKeys[i]
79
79
  , this.denseValues[i]
@@ -82,19 +82,24 @@ export class TypedCleanSparseMap<
82
82
  }
83
83
 
84
84
  * keys(): IterableIterator<number> {
85
- for (let i = 0; i < this.#length; i++) {
85
+ for (let i = 0; i < this._length; i++) {
86
86
  yield this.denseKeys[i]
87
87
  }
88
88
  }
89
89
 
90
90
  * values(): IterableIterator<number> {
91
- for (let i = 0; i < this.#length; i++) {
91
+ for (let i = 0; i < this._length; i++) {
92
92
  yield this.denseValues[i]
93
93
  }
94
94
  }
95
95
 
96
96
  getInternalIndexOfKey(key: number): number | undefined {
97
- return this.sparse[key]
97
+ const index = this.sparse[key]
98
+ if (index !== this.NULL) {
99
+ return index
100
+ } else {
101
+ return undefined
102
+ }
98
103
  }
99
104
 
100
105
  has(key: number): boolean {
@@ -115,7 +120,7 @@ export class TypedCleanSparseMap<
115
120
  if (index !== this.NULL) {
116
121
  this.denseValues[index] = value
117
122
  } else {
118
- const index = this.#length++
123
+ const index = this._length++
119
124
  this.denseKeys[index] = key
120
125
  this.denseValues[index] = value
121
126
  this.sparse[key] = index
@@ -127,7 +132,7 @@ export class TypedCleanSparseMap<
127
132
  if (index !== this.NULL) {
128
133
  this.sparse[key] = this.NULL
129
134
 
130
- const lastIndex = --this.#length
135
+ const lastIndex = --this._length
131
136
  const lastKey = this.denseKeys[lastIndex]
132
137
  const lastValue = this.denseValues[lastIndex]
133
138
  if (key !== lastKey) {
@@ -143,7 +148,7 @@ export class TypedCleanSparseMap<
143
148
  }
144
149
 
145
150
  clear(): void {
146
- this.#length = 0
151
+ this._length = 0
147
152
  this.sparse.fill(this.NULL)
148
153
  }
149
154
  }