@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.
- package/lib/bit-set/bit-set.d.ts +1 -1
- package/lib/bit-set/bit-set.js +6 -6
- package/lib/bit-set/bit-set.js.map +1 -1
- package/lib/bit-set/dynamic-typed-bit-set.d.ts +1 -1
- package/lib/bit-set/dynamic-typed-bit-set.js +5 -5
- package/lib/bit-set/dynamic-typed-bit-set.js.map +1 -1
- package/lib/bit-set/resizable-typed-bit-set.d.ts +1 -1
- package/lib/bit-set/resizable-typed-bit-set.js +5 -5
- package/lib/bit-set/resizable-typed-bit-set.js.map +1 -1
- package/lib/bit-set/typed-bit-set.d.ts +1 -1
- package/lib/bit-set/typed-bit-set.js +5 -5
- package/lib/bit-set/typed-bit-set.js.map +1 -1
- package/lib/dynamic-typed-array.d.ts +1 -1
- package/lib/dynamic-typed-array.js +14 -14
- package/lib/dynamic-typed-array.js.map +1 -1
- package/lib/resizable-typed-array.d.ts +1 -1
- package/lib/resizable-typed-array.js +14 -14
- package/lib/resizable-typed-array.js.map +1 -1
- package/lib/sparse-map/typed-clean-sparse-map-lite.d.ts +1 -1
- package/lib/sparse-map/typed-clean-sparse-map-lite.js +8 -8
- package/lib/sparse-map/typed-clean-sparse-map-lite.js.map +1 -1
- package/lib/sparse-map/typed-clean-sparse-map.d.ts +1 -1
- package/lib/sparse-map/typed-clean-sparse-map.js +15 -9
- package/lib/sparse-map/typed-clean-sparse-map.js.map +1 -1
- package/lib/sparse-map/typed-sparse-map-lite.d.ts +1 -1
- package/lib/sparse-map/typed-sparse-map-lite.js +13 -13
- package/lib/sparse-map/typed-sparse-map-lite.js.map +1 -1
- package/lib/sparse-map/typed-sparse-map.d.ts +1 -1
- package/lib/sparse-map/typed-sparse-map.js +13 -13
- package/lib/sparse-map/typed-sparse-map.js.map +1 -1
- package/lib/sparse-set/typed-clean-sparse-set-lite.d.ts +1 -1
- package/lib/sparse-set/typed-clean-sparse-set-lite.js +6 -6
- package/lib/sparse-set/typed-clean-sparse-set-lite.js.map +1 -1
- package/lib/sparse-set/typed-clean-sparse-set.d.ts +1 -1
- package/lib/sparse-set/typed-clean-sparse-set.js +6 -6
- package/lib/sparse-set/typed-clean-sparse-set.js.map +1 -1
- package/lib/sparse-set/typed-sparse-set-lite.d.ts +1 -1
- package/lib/sparse-set/typed-sparse-set-lite.js +8 -8
- package/lib/sparse-set/typed-sparse-set-lite.js.map +1 -1
- package/lib/sparse-set/typed-sparse-set.d.ts +1 -1
- package/lib/sparse-set/typed-sparse-set.js +8 -8
- package/lib/sparse-set/typed-sparse-set.js.map +1 -1
- package/package.json +1 -1
- package/src/bit-set/bit-set.ts +6 -6
- package/src/bit-set/dynamic-typed-bit-set.ts +5 -5
- package/src/bit-set/resizable-typed-bit-set.ts +5 -5
- package/src/bit-set/typed-bit-set.ts +5 -5
- package/src/dynamic-typed-array.ts +14 -14
- package/src/resizable-typed-array.ts +14 -14
- package/src/sparse-map/typed-clean-sparse-map-lite.ts +8 -8
- package/src/sparse-map/typed-clean-sparse-map.ts +14 -9
- package/src/sparse-map/typed-sparse-map-lite.ts +13 -13
- package/src/sparse-map/typed-sparse-map.ts +13 -13
- package/src/sparse-set/typed-clean-sparse-set-lite.ts +6 -6
- package/src/sparse-set/typed-clean-sparse-set.ts +6 -6
- package/src/sparse-set/typed-sparse-set-lite.ts +8 -8
- package/src/sparse-set/typed-sparse-set.ts +8 -8
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { TypedArrayConstructor, UnsignedTypedArrayConstructor, TypedArrayOfConstructor } from 'justypes';
|
|
2
2
|
export declare class TypedCleanSparseMap<K extends UnsignedTypedArrayConstructor, V extends TypedArrayConstructor> {
|
|
3
|
-
#private;
|
|
4
3
|
private denseKeys;
|
|
5
4
|
private denseValues;
|
|
6
5
|
private sparse;
|
|
7
6
|
private readonly NULL;
|
|
7
|
+
private _length;
|
|
8
8
|
readonly internalKeyArray: TypedArrayOfConstructor<K, ArrayBuffer>;
|
|
9
9
|
readonly internalValueArray: TypedArrayOfConstructor<V, ArrayBuffer>;
|
|
10
10
|
get [Symbol.toStringTag](): string;
|
|
@@ -6,14 +6,14 @@ export class TypedCleanSparseMap {
|
|
|
6
6
|
denseValues;
|
|
7
7
|
sparse;
|
|
8
8
|
NULL;
|
|
9
|
-
|
|
9
|
+
_length = 0;
|
|
10
10
|
internalKeyArray;
|
|
11
11
|
internalValueArray;
|
|
12
12
|
get [Symbol.toStringTag]() {
|
|
13
13
|
return this.constructor.name;
|
|
14
14
|
}
|
|
15
15
|
get size() {
|
|
16
|
-
return this
|
|
16
|
+
return this._length;
|
|
17
17
|
}
|
|
18
18
|
constructor(keys, values) {
|
|
19
19
|
assert(!keys.buffer.resizable, 'The keys buffer must not be resizable');
|
|
@@ -47,7 +47,7 @@ export class TypedCleanSparseMap {
|
|
|
47
47
|
this.sparse = sparse;
|
|
48
48
|
}
|
|
49
49
|
*entries() {
|
|
50
|
-
for (let i = 0; i < this
|
|
50
|
+
for (let i = 0; i < this._length; i++) {
|
|
51
51
|
yield [
|
|
52
52
|
this.denseKeys[i],
|
|
53
53
|
this.denseValues[i]
|
|
@@ -55,17 +55,23 @@ export class TypedCleanSparseMap {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
*keys() {
|
|
58
|
-
for (let i = 0; i < this
|
|
58
|
+
for (let i = 0; i < this._length; i++) {
|
|
59
59
|
yield this.denseKeys[i];
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
*values() {
|
|
63
|
-
for (let i = 0; i < this
|
|
63
|
+
for (let i = 0; i < this._length; i++) {
|
|
64
64
|
yield this.denseValues[i];
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
getInternalIndexOfKey(key) {
|
|
68
|
-
|
|
68
|
+
const index = this.sparse[key];
|
|
69
|
+
if (index !== this.NULL) {
|
|
70
|
+
return index;
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
return undefined;
|
|
74
|
+
}
|
|
69
75
|
}
|
|
70
76
|
has(key) {
|
|
71
77
|
return this.sparse[key] !== this.NULL;
|
|
@@ -85,7 +91,7 @@ export class TypedCleanSparseMap {
|
|
|
85
91
|
this.denseValues[index] = value;
|
|
86
92
|
}
|
|
87
93
|
else {
|
|
88
|
-
const index = this
|
|
94
|
+
const index = this._length++;
|
|
89
95
|
this.denseKeys[index] = key;
|
|
90
96
|
this.denseValues[index] = value;
|
|
91
97
|
this.sparse[key] = index;
|
|
@@ -95,7 +101,7 @@ export class TypedCleanSparseMap {
|
|
|
95
101
|
const index = this.sparse[key];
|
|
96
102
|
if (index !== this.NULL) {
|
|
97
103
|
this.sparse[key] = this.NULL;
|
|
98
|
-
const lastIndex = --this
|
|
104
|
+
const lastIndex = --this._length;
|
|
99
105
|
const lastKey = this.denseKeys[lastIndex];
|
|
100
106
|
const lastValue = this.denseValues[lastIndex];
|
|
101
107
|
if (key !== lastKey) {
|
|
@@ -110,7 +116,7 @@ export class TypedCleanSparseMap {
|
|
|
110
116
|
}
|
|
111
117
|
}
|
|
112
118
|
clear() {
|
|
113
|
-
this
|
|
119
|
+
this._length = 0;
|
|
114
120
|
this.sparse.fill(this.NULL);
|
|
115
121
|
}
|
|
116
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-clean-sparse-map.js","sourceRoot":"","sources":["../../src/sparse-map/typed-clean-sparse-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AACnC,OAAO,EAAE,+BAA+B,EAAE,0CAA0C,EAAE,MAAM,qBAAqB,CAAA;AAGjH,MAAM,OAAO,mBAAmB;IAItB,SAAS,CAA4B;IACrC,WAAW,CAA4B;IACvC,MAAM,CAAoB;IACjB,IAAI,CAAQ;
|
|
1
|
+
{"version":3,"file":"typed-clean-sparse-map.js","sourceRoot":"","sources":["../../src/sparse-map/typed-clean-sparse-map.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { TypedArrayConstructor, UnsignedTypedArrayConstructor, TypedArrayOfConstructor } from 'justypes';
|
|
2
2
|
export declare class TypedSparseMapLite<K extends UnsignedTypedArrayConstructor, V extends TypedArrayConstructor> {
|
|
3
|
-
#private;
|
|
4
3
|
private denseKeys;
|
|
5
4
|
private denseValues;
|
|
6
5
|
private sparse;
|
|
6
|
+
private _length;
|
|
7
7
|
readonly internalKeyArray: TypedArrayOfConstructor<K, ArrayBuffer>;
|
|
8
8
|
readonly internalValueArray: TypedArrayOfConstructor<V, ArrayBuffer>;
|
|
9
9
|
get [Symbol.toStringTag](): string;
|
|
@@ -3,14 +3,14 @@ export class TypedSparseMapLite {
|
|
|
3
3
|
denseKeys;
|
|
4
4
|
denseValues;
|
|
5
5
|
sparse = [];
|
|
6
|
-
|
|
6
|
+
_length = 0;
|
|
7
7
|
internalKeyArray;
|
|
8
8
|
internalValueArray;
|
|
9
9
|
get [Symbol.toStringTag]() {
|
|
10
10
|
return this.constructor.name;
|
|
11
11
|
}
|
|
12
12
|
get size() {
|
|
13
|
-
return this
|
|
13
|
+
return this._length;
|
|
14
14
|
}
|
|
15
15
|
constructor(keys, values) {
|
|
16
16
|
assert(!keys.buffer.resizable, 'The keys buffer must not be resizable');
|
|
@@ -22,7 +22,7 @@ export class TypedSparseMapLite {
|
|
|
22
22
|
this.internalValueArray = values;
|
|
23
23
|
}
|
|
24
24
|
*entries() {
|
|
25
|
-
for (let i = 0; i < this
|
|
25
|
+
for (let i = 0; i < this._length; i++) {
|
|
26
26
|
yield [
|
|
27
27
|
this.denseKeys[i],
|
|
28
28
|
this.denseValues[i]
|
|
@@ -30,19 +30,19 @@ export class TypedSparseMapLite {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
*keys() {
|
|
33
|
-
for (let i = 0; i < this
|
|
33
|
+
for (let i = 0; i < this._length; i++) {
|
|
34
34
|
yield this.denseKeys[i];
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
*values() {
|
|
38
|
-
for (let i = 0; i < this
|
|
38
|
+
for (let i = 0; i < this._length; i++) {
|
|
39
39
|
yield this.denseValues[i];
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
getInternalIndexOfKey(key) {
|
|
43
43
|
const index = this.sparse[key];
|
|
44
44
|
if (index !== undefined &&
|
|
45
|
-
index < this
|
|
45
|
+
index < this._length &&
|
|
46
46
|
index < this.denseKeys.length &&
|
|
47
47
|
this.denseKeys[index] === key) {
|
|
48
48
|
return index;
|
|
@@ -51,14 +51,14 @@ export class TypedSparseMapLite {
|
|
|
51
51
|
has(key) {
|
|
52
52
|
const index = this.sparse[key];
|
|
53
53
|
return index !== undefined
|
|
54
|
-
&& index < this
|
|
54
|
+
&& index < this._length
|
|
55
55
|
&& index < this.denseKeys.length
|
|
56
56
|
&& this.denseKeys[index] === key;
|
|
57
57
|
}
|
|
58
58
|
get(key) {
|
|
59
59
|
const index = this.sparse[key];
|
|
60
60
|
if (index !== undefined &&
|
|
61
|
-
index < this
|
|
61
|
+
index < this._length &&
|
|
62
62
|
index < this.denseKeys.length &&
|
|
63
63
|
this.denseKeys[index] === key) {
|
|
64
64
|
return this.denseValues[index];
|
|
@@ -70,13 +70,13 @@ export class TypedSparseMapLite {
|
|
|
70
70
|
set(key, value) {
|
|
71
71
|
const index = this.sparse[key];
|
|
72
72
|
if (index !== undefined &&
|
|
73
|
-
index < this
|
|
73
|
+
index < this._length &&
|
|
74
74
|
index < this.denseKeys.length &&
|
|
75
75
|
this.denseKeys[index] === key) {
|
|
76
76
|
this.denseValues[index] = value;
|
|
77
77
|
}
|
|
78
78
|
else {
|
|
79
|
-
const index = this
|
|
79
|
+
const index = this._length++;
|
|
80
80
|
this.denseKeys[index] = key;
|
|
81
81
|
this.denseValues[index] = value;
|
|
82
82
|
this.sparse[key] = index;
|
|
@@ -85,10 +85,10 @@ export class TypedSparseMapLite {
|
|
|
85
85
|
delete(key) {
|
|
86
86
|
const index = this.sparse[key];
|
|
87
87
|
if (index !== undefined &&
|
|
88
|
-
index < this
|
|
88
|
+
index < this._length &&
|
|
89
89
|
index < this.denseKeys.length &&
|
|
90
90
|
this.denseKeys[index] === key) {
|
|
91
|
-
const lastIndex = --this
|
|
91
|
+
const lastIndex = --this._length;
|
|
92
92
|
const lastKey = this.denseKeys[lastIndex];
|
|
93
93
|
const lastValue = this.denseValues[lastIndex];
|
|
94
94
|
if (key !== lastKey) {
|
|
@@ -103,7 +103,7 @@ export class TypedSparseMapLite {
|
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
105
|
clear() {
|
|
106
|
-
this
|
|
106
|
+
this._length = 0;
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
//# sourceMappingURL=typed-sparse-map-lite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-sparse-map-lite.js","sourceRoot":"","sources":["../../src/sparse-map/typed-sparse-map-lite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,MAAM,OAAO,kBAAkB;IAIrB,SAAS,CAA4B;IACrC,WAAW,CAA4B;IACvC,MAAM,GAA8B,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"typed-sparse-map-lite.js","sourceRoot":"","sources":["../../src/sparse-map/typed-sparse-map-lite.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { TypedArrayConstructor, UnsignedTypedArrayConstructor, TypedArrayOfConstructor } from 'justypes';
|
|
2
2
|
export declare class TypedSparseMap<K extends UnsignedTypedArrayConstructor, V extends TypedArrayConstructor> {
|
|
3
|
-
#private;
|
|
4
3
|
private denseKeys;
|
|
5
4
|
private denseValues;
|
|
6
5
|
private sparse;
|
|
6
|
+
private _length;
|
|
7
7
|
readonly internalKeyArray: TypedArrayOfConstructor<K, ArrayBuffer>;
|
|
8
8
|
readonly internalValueArray: TypedArrayOfConstructor<V, ArrayBuffer>;
|
|
9
9
|
get [Symbol.toStringTag](): string;
|
|
@@ -5,14 +5,14 @@ export class TypedSparseMap {
|
|
|
5
5
|
denseKeys;
|
|
6
6
|
denseValues;
|
|
7
7
|
sparse;
|
|
8
|
-
|
|
8
|
+
_length = 0;
|
|
9
9
|
internalKeyArray;
|
|
10
10
|
internalValueArray;
|
|
11
11
|
get [Symbol.toStringTag]() {
|
|
12
12
|
return this.constructor.name;
|
|
13
13
|
}
|
|
14
14
|
get size() {
|
|
15
|
-
return this
|
|
15
|
+
return this._length;
|
|
16
16
|
}
|
|
17
17
|
constructor(keys, values) {
|
|
18
18
|
assert(!keys.buffer.resizable, 'The keys buffer must not be resizable');
|
|
@@ -43,7 +43,7 @@ export class TypedSparseMap {
|
|
|
43
43
|
this.sparse = new sparseConstructor(getMaxValueOfUnsignedTypedArray(keys) + 1);
|
|
44
44
|
}
|
|
45
45
|
*entries() {
|
|
46
|
-
for (let i = 0; i < this
|
|
46
|
+
for (let i = 0; i < this._length; i++) {
|
|
47
47
|
yield [
|
|
48
48
|
this.denseKeys[i],
|
|
49
49
|
this.denseValues[i]
|
|
@@ -51,19 +51,19 @@ export class TypedSparseMap {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
*keys() {
|
|
54
|
-
for (let i = 0; i < this
|
|
54
|
+
for (let i = 0; i < this._length; i++) {
|
|
55
55
|
yield this.denseKeys[i];
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
*values() {
|
|
59
|
-
for (let i = 0; i < this
|
|
59
|
+
for (let i = 0; i < this._length; i++) {
|
|
60
60
|
yield this.denseValues[i];
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
getInternalIndexOfKey(key) {
|
|
64
64
|
const index = this.sparse[key];
|
|
65
65
|
if (index !== undefined &&
|
|
66
|
-
index < this
|
|
66
|
+
index < this._length &&
|
|
67
67
|
index < this.denseKeys.length &&
|
|
68
68
|
this.denseKeys[index] === key) {
|
|
69
69
|
return index;
|
|
@@ -72,14 +72,14 @@ export class TypedSparseMap {
|
|
|
72
72
|
has(key) {
|
|
73
73
|
const index = this.sparse[key];
|
|
74
74
|
return index !== undefined
|
|
75
|
-
&& index < this
|
|
75
|
+
&& index < this._length
|
|
76
76
|
&& index < this.denseKeys.length
|
|
77
77
|
&& this.denseKeys[index] === key;
|
|
78
78
|
}
|
|
79
79
|
get(key) {
|
|
80
80
|
const index = this.sparse[key];
|
|
81
81
|
if (index !== undefined &&
|
|
82
|
-
index < this
|
|
82
|
+
index < this._length &&
|
|
83
83
|
index < this.denseKeys.length &&
|
|
84
84
|
this.denseKeys[index] === key) {
|
|
85
85
|
return this.denseValues[index];
|
|
@@ -91,13 +91,13 @@ export class TypedSparseMap {
|
|
|
91
91
|
set(key, value) {
|
|
92
92
|
const index = this.sparse[key];
|
|
93
93
|
if (index !== undefined &&
|
|
94
|
-
index < this
|
|
94
|
+
index < this._length &&
|
|
95
95
|
index < this.denseKeys.length &&
|
|
96
96
|
this.denseKeys[index] === key) {
|
|
97
97
|
this.denseValues[index] = value;
|
|
98
98
|
}
|
|
99
99
|
else {
|
|
100
|
-
const index = this
|
|
100
|
+
const index = this._length++;
|
|
101
101
|
this.denseKeys[index] = key;
|
|
102
102
|
this.denseValues[index] = value;
|
|
103
103
|
this.sparse[key] = index;
|
|
@@ -106,10 +106,10 @@ export class TypedSparseMap {
|
|
|
106
106
|
delete(key) {
|
|
107
107
|
const index = this.sparse[key];
|
|
108
108
|
if (index !== undefined &&
|
|
109
|
-
index < this
|
|
109
|
+
index < this._length &&
|
|
110
110
|
index < this.denseKeys.length &&
|
|
111
111
|
this.denseKeys[index] === key) {
|
|
112
|
-
const lastIndex = --this
|
|
112
|
+
const lastIndex = --this._length;
|
|
113
113
|
const lastKey = this.denseKeys[lastIndex];
|
|
114
114
|
const lastValue = this.denseValues[lastIndex];
|
|
115
115
|
if (key !== lastKey) {
|
|
@@ -124,7 +124,7 @@ export class TypedSparseMap {
|
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
126
|
clear() {
|
|
127
|
-
this
|
|
127
|
+
this._length = 0;
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
//# sourceMappingURL=typed-sparse-map.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-sparse-map.js","sourceRoot":"","sources":["../../src/sparse-map/typed-sparse-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AACnC,OAAO,EAAE,+BAA+B,EAAE,0CAA0C,EAAE,MAAM,qBAAqB,CAAA;AAGjH,MAAM,OAAO,cAAc;IAIjB,SAAS,CAA4B;IACrC,WAAW,CAA4B;IACvC,MAAM,CAAoB;
|
|
1
|
+
{"version":3,"file":"typed-sparse-map.js","sourceRoot":"","sources":["../../src/sparse-map/typed-sparse-map.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { UnsignedTypedArray } from 'justypes';
|
|
2
2
|
export declare class TypedCleanSparseSetLite implements Iterable<number> {
|
|
3
|
-
#private;
|
|
4
3
|
private dense;
|
|
5
4
|
private sparse;
|
|
5
|
+
private _length;
|
|
6
6
|
get [Symbol.toStringTag](): string;
|
|
7
7
|
get size(): number;
|
|
8
8
|
constructor(array: UnsignedTypedArray<ArrayBuffer>);
|
|
@@ -2,12 +2,12 @@ import { assert } from '@blackglory/errors';
|
|
|
2
2
|
export class TypedCleanSparseSetLite {
|
|
3
3
|
dense;
|
|
4
4
|
sparse = [];
|
|
5
|
-
|
|
5
|
+
_length = 0;
|
|
6
6
|
get [Symbol.toStringTag]() {
|
|
7
7
|
return this.constructor.name;
|
|
8
8
|
}
|
|
9
9
|
get size() {
|
|
10
|
-
return this
|
|
10
|
+
return this._length;
|
|
11
11
|
}
|
|
12
12
|
constructor(array) {
|
|
13
13
|
assert(!array.buffer.resizable, 'The array buffer must not be resizable');
|
|
@@ -17,7 +17,7 @@ export class TypedCleanSparseSetLite {
|
|
|
17
17
|
return this.values();
|
|
18
18
|
}
|
|
19
19
|
*values() {
|
|
20
|
-
for (let i = 0; i < this
|
|
20
|
+
for (let i = 0; i < this._length; i++) {
|
|
21
21
|
yield this.dense[i];
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -26,7 +26,7 @@ export class TypedCleanSparseSetLite {
|
|
|
26
26
|
}
|
|
27
27
|
add(value) {
|
|
28
28
|
if (!this.has(value)) {
|
|
29
|
-
const index = this
|
|
29
|
+
const index = this._length++;
|
|
30
30
|
this.dense[index] = value;
|
|
31
31
|
this.sparse[value] = index;
|
|
32
32
|
}
|
|
@@ -35,7 +35,7 @@ export class TypedCleanSparseSetLite {
|
|
|
35
35
|
const index = this.sparse[value];
|
|
36
36
|
if (index !== undefined) {
|
|
37
37
|
this.sparse[value] = undefined;
|
|
38
|
-
const lastIndex = --this
|
|
38
|
+
const lastIndex = --this._length;
|
|
39
39
|
const lastValue = this.dense[lastIndex];
|
|
40
40
|
if (value !== lastValue) {
|
|
41
41
|
this.dense[index] = lastValue;
|
|
@@ -48,7 +48,7 @@ export class TypedCleanSparseSetLite {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
clear() {
|
|
51
|
-
this
|
|
51
|
+
this._length = 0;
|
|
52
52
|
this.sparse.length = 0;
|
|
53
53
|
}
|
|
54
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-clean-sparse-set-lite.js","sourceRoot":"","sources":["../../src/sparse-set/typed-clean-sparse-set-lite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,MAAM,OAAO,uBAAuB;IAC1B,KAAK,CAAoB;IACzB,MAAM,GAA8B,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"typed-clean-sparse-set-lite.js","sourceRoot":"","sources":["../../src/sparse-set/typed-clean-sparse-set-lite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,MAAM,OAAO,uBAAuB;IAC1B,KAAK,CAAoB;IACzB,MAAM,GAA8B,EAAE,CAAA;IACtC,OAAO,GAAG,CAAC,CAAA;IAEnB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,YAAY,KAAsC;QAChD,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAA;QAEzE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IAED,CAAE,MAAM;QACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,GAAG,CAAC,KAAa;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS,CAAA;IACzC,CAAC;IAED,GAAG,CAAC,KAAa;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;YAC5B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;YACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;QAC5B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;YAE9B,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,OAAO,CAAA;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;gBAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAA;YAChC,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IACxB,CAAC;CACF"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { UnsignedTypedArray } from 'justypes';
|
|
2
2
|
export declare class TypedCleanSparseSet implements Iterable<number> {
|
|
3
|
-
#private;
|
|
4
3
|
private dense;
|
|
5
4
|
private sparse;
|
|
6
5
|
private readonly NULL;
|
|
6
|
+
private _length;
|
|
7
7
|
get [Symbol.toStringTag](): string;
|
|
8
8
|
get size(): number;
|
|
9
9
|
constructor(array: UnsignedTypedArray<ArrayBuffer>);
|
|
@@ -5,12 +5,12 @@ export class TypedCleanSparseSet {
|
|
|
5
5
|
dense;
|
|
6
6
|
sparse;
|
|
7
7
|
NULL;
|
|
8
|
-
|
|
8
|
+
_length = 0;
|
|
9
9
|
get [Symbol.toStringTag]() {
|
|
10
10
|
return this.constructor.name;
|
|
11
11
|
}
|
|
12
12
|
get size() {
|
|
13
|
-
return this
|
|
13
|
+
return this._length;
|
|
14
14
|
}
|
|
15
15
|
constructor(array) {
|
|
16
16
|
assert(!array.buffer.resizable, 'The array buffer must not be resizable');
|
|
@@ -42,7 +42,7 @@ export class TypedCleanSparseSet {
|
|
|
42
42
|
return this.values();
|
|
43
43
|
}
|
|
44
44
|
*values() {
|
|
45
|
-
for (let i = 0; i < this
|
|
45
|
+
for (let i = 0; i < this._length; i++) {
|
|
46
46
|
yield this.dense[i];
|
|
47
47
|
}
|
|
48
48
|
}
|
|
@@ -51,7 +51,7 @@ export class TypedCleanSparseSet {
|
|
|
51
51
|
}
|
|
52
52
|
add(value) {
|
|
53
53
|
if (!this.has(value)) {
|
|
54
|
-
const index = this
|
|
54
|
+
const index = this._length++;
|
|
55
55
|
this.dense[index] = value;
|
|
56
56
|
this.sparse[value] = index;
|
|
57
57
|
}
|
|
@@ -60,7 +60,7 @@ export class TypedCleanSparseSet {
|
|
|
60
60
|
const index = this.sparse[value];
|
|
61
61
|
if (index !== this.NULL) {
|
|
62
62
|
this.sparse[value] = this.NULL;
|
|
63
|
-
const lastIndex = --this
|
|
63
|
+
const lastIndex = --this._length;
|
|
64
64
|
const lastValue = this.dense[lastIndex];
|
|
65
65
|
if (value !== lastValue) {
|
|
66
66
|
this.dense[index] = lastValue;
|
|
@@ -73,7 +73,7 @@ export class TypedCleanSparseSet {
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
clear() {
|
|
76
|
-
this
|
|
76
|
+
this._length = 0;
|
|
77
77
|
this.sparse.fill(this.NULL);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-clean-sparse-set.js","sourceRoot":"","sources":["../../src/sparse-set/typed-clean-sparse-set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AACnC,OAAO,EAAE,+BAA+B,EAAE,0CAA0C,EAAE,MAAM,qBAAqB,CAAA;AAGjH,MAAM,OAAO,mBAAmB;IACtB,KAAK,CAAoB;IACzB,MAAM,CAAoB;IACjB,IAAI,CAAQ;
|
|
1
|
+
{"version":3,"file":"typed-clean-sparse-set.js","sourceRoot":"","sources":["../../src/sparse-set/typed-clean-sparse-set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AACnC,OAAO,EAAE,+BAA+B,EAAE,0CAA0C,EAAE,MAAM,qBAAqB,CAAA;AAGjH,MAAM,OAAO,mBAAmB;IACtB,KAAK,CAAoB;IACzB,MAAM,CAAoB;IACjB,IAAI,CAAQ;IACrB,OAAO,GAAG,CAAC,CAAA;IAEnB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,YAAY,KAAsC;QAChD,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAA;QAEzE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACnB,KAAK,CAAC,MAAM,EACZ,+BAA+B,CAAC,KAAK,CAAC,GAAG,CAAC,CAC3C,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAEhB,MAAM,iBAAiB,GAAG,EAAE,CAAC,GAAG,EAAE;YAChC,IACE,IAAI;gBACJ,0CAA0C,CAAC,UAAU,CAAC,EACtD,CAAC;gBACD,OAAO,UAAU,CAAA;YACnB,CAAC;iBAAM,IACL,IAAI;gBACJ,0CAA0C,CAAC,WAAW,CAAC,EACvD,CAAC;gBACD,OAAO,WAAW,CAAA;YACpB,CAAC;iBAAM,IACL,IAAI;gBACJ,0CAA0C,CAAC,WAAW,CAAC,EACvD,CAAC;gBACD,OAAO,WAAW,CAAA;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,+BAA+B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;QAChF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IAED,CAAE,MAAM;QACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,GAAG,CAAC,KAAa;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,CAAA;IACzC,CAAC;IAED,GAAG,CAAC,KAAa;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;YAC5B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;YACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;QAC5B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA;YAE9B,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,OAAO,CAAA;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;gBAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAA;YAChC,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;QAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC;CACF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { UnsignedTypedArray } from 'justypes';
|
|
2
2
|
export declare class TypedSparseSetLite implements Iterable<number> {
|
|
3
|
-
#private;
|
|
4
3
|
private dense;
|
|
5
4
|
private sparse;
|
|
5
|
+
private _length;
|
|
6
6
|
get [Symbol.toStringTag](): string;
|
|
7
7
|
get size(): number;
|
|
8
8
|
constructor(array: UnsignedTypedArray<ArrayBuffer>);
|
|
@@ -2,12 +2,12 @@ import { assert } from '@blackglory/errors';
|
|
|
2
2
|
export class TypedSparseSetLite {
|
|
3
3
|
dense;
|
|
4
4
|
sparse = [];
|
|
5
|
-
|
|
5
|
+
_length = 0;
|
|
6
6
|
get [Symbol.toStringTag]() {
|
|
7
7
|
return this.constructor.name;
|
|
8
8
|
}
|
|
9
9
|
get size() {
|
|
10
|
-
return this
|
|
10
|
+
return this._length;
|
|
11
11
|
}
|
|
12
12
|
constructor(array) {
|
|
13
13
|
assert(!array.buffer.resizable, 'The array buffer must not be resizable');
|
|
@@ -17,20 +17,20 @@ export class TypedSparseSetLite {
|
|
|
17
17
|
return this.values();
|
|
18
18
|
}
|
|
19
19
|
*values() {
|
|
20
|
-
for (let i = 0; i < this
|
|
20
|
+
for (let i = 0; i < this._length; i++) {
|
|
21
21
|
yield this.dense[i];
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
has(value) {
|
|
25
25
|
const index = this.sparse[value];
|
|
26
26
|
return index !== undefined
|
|
27
|
-
&& index < this
|
|
27
|
+
&& index < this._length
|
|
28
28
|
&& index < this.dense.length
|
|
29
29
|
&& this.dense[index] === value;
|
|
30
30
|
}
|
|
31
31
|
add(value) {
|
|
32
32
|
if (!this.has(value)) {
|
|
33
|
-
const index = this
|
|
33
|
+
const index = this._length++;
|
|
34
34
|
this.dense[index] = value;
|
|
35
35
|
this.sparse[value] = index;
|
|
36
36
|
}
|
|
@@ -38,10 +38,10 @@ export class TypedSparseSetLite {
|
|
|
38
38
|
delete(value) {
|
|
39
39
|
const index = this.sparse[value];
|
|
40
40
|
if (index !== undefined &&
|
|
41
|
-
index < this
|
|
41
|
+
index < this._length &&
|
|
42
42
|
index < this.dense.length &&
|
|
43
43
|
this.dense[index] === value) {
|
|
44
|
-
const lastIndex = --this
|
|
44
|
+
const lastIndex = --this._length;
|
|
45
45
|
const lastValue = this.dense[lastIndex];
|
|
46
46
|
if (value !== lastValue) {
|
|
47
47
|
this.dense[index] = lastValue;
|
|
@@ -54,7 +54,7 @@ export class TypedSparseSetLite {
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
clear() {
|
|
57
|
-
this
|
|
57
|
+
this._length = 0;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
//# sourceMappingURL=typed-sparse-set-lite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-sparse-set-lite.js","sourceRoot":"","sources":["../../src/sparse-set/typed-sparse-set-lite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,MAAM,OAAO,kBAAkB;IACrB,KAAK,CAAoB;IACzB,MAAM,GAA8B,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"typed-sparse-set-lite.js","sourceRoot":"","sources":["../../src/sparse-set/typed-sparse-set-lite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,MAAM,OAAO,kBAAkB;IACrB,KAAK,CAAoB;IACzB,MAAM,GAA8B,EAAE,CAAA;IACtC,OAAO,GAAG,CAAC,CAAA;IAEnB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,YAAY,KAAsC;QAChD,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAA;QAEzE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IAED,CAAE,MAAM;QACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,GAAG,CAAC,KAAa;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChC,OAAO,KAAK,KAAK,SAAS;eACnB,KAAK,GAAG,IAAI,CAAC,OAAO;eACpB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM;eACzB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;IACpC,CAAC;IAED,GAAG,CAAC,KAAa;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;YAC5B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;YACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;QAC5B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChC,IACE,KAAK,KAAK,SAAS;YACnB,KAAK,GAAG,IAAI,CAAC,OAAO;YACpB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM;YACzB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,EAC3B,CAAC;YACD,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,OAAO,CAAA;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;gBAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAA;YAChC,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;IAElB,CAAC;CACF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { UnsignedTypedArray } from 'justypes';
|
|
2
2
|
export declare class TypedSparseSet implements Iterable<number> {
|
|
3
|
-
#private;
|
|
4
3
|
private dense;
|
|
5
4
|
private sparse;
|
|
5
|
+
private _length;
|
|
6
6
|
get [Symbol.toStringTag](): string;
|
|
7
7
|
get size(): number;
|
|
8
8
|
constructor(array: UnsignedTypedArray<ArrayBuffer>);
|