@blackglory/structures 0.9.0 → 0.10.2

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 (66) hide show
  1. package/README.md +52 -42
  2. package/dist/es2015/index.min.mjs +2 -2
  3. package/dist/es2015/index.min.mjs.map +1 -1
  4. package/dist/es2015/index.mjs +9479 -2485
  5. package/dist/es2015/index.mjs.map +1 -1
  6. package/dist/es2015/index.umd.js +9479 -2484
  7. package/dist/es2015/index.umd.js.map +1 -1
  8. package/dist/es2015/index.umd.min.js +2 -2
  9. package/dist/es2015/index.umd.min.js.map +1 -1
  10. package/dist/es2018/index.min.mjs +2 -2
  11. package/dist/es2018/index.min.mjs.map +1 -1
  12. package/dist/es2018/index.mjs +9479 -2485
  13. package/dist/es2018/index.mjs.map +1 -1
  14. package/dist/es2018/index.umd.js +9479 -2484
  15. package/dist/es2018/index.umd.js.map +1 -1
  16. package/dist/es2018/index.umd.min.js +2 -2
  17. package/dist/es2018/index.umd.min.js.map +1 -1
  18. package/lib/es2015/dynamic-typed-array.d.ts +1 -1
  19. package/lib/es2015/dynamic-typed-array.js +25 -20
  20. package/lib/es2015/dynamic-typed-array.js.map +1 -1
  21. package/lib/es2015/hash-set.d.ts +1 -1
  22. package/lib/es2015/index.d.ts +1 -0
  23. package/lib/es2015/index.js +1 -0
  24. package/lib/es2015/index.js.map +1 -1
  25. package/lib/es2015/sorted-set.d.ts +10 -0
  26. package/lib/es2015/sorted-set.js +30 -0
  27. package/lib/es2015/sorted-set.js.map +1 -0
  28. package/lib/es2015/sparse-map.d.ts +3 -3
  29. package/lib/es2015/sparse-set.d.ts +2 -0
  30. package/lib/es2015/sparse-set.js +11 -2
  31. package/lib/es2015/sparse-set.js.map +1 -1
  32. package/lib/es2015/trie-map.d.ts +3 -3
  33. package/lib/es2015/typed-sparse-map.d.ts +5 -9
  34. package/lib/es2015/typed-sparse-map.js +23 -20
  35. package/lib/es2015/typed-sparse-map.js.map +1 -1
  36. package/lib/es2015/typed-sparse-set.d.ts +3 -5
  37. package/lib/es2015/typed-sparse-set.js +19 -9
  38. package/lib/es2015/typed-sparse-set.js.map +1 -1
  39. package/lib/es2015/utils/skip-list.d.ts +24 -0
  40. package/lib/es2015/utils/skip-list.js +155 -0
  41. package/lib/es2015/utils/skip-list.js.map +1 -0
  42. package/lib/es2018/dynamic-typed-array.d.ts +1 -1
  43. package/lib/es2018/dynamic-typed-array.js +25 -20
  44. package/lib/es2018/dynamic-typed-array.js.map +1 -1
  45. package/lib/es2018/hash-set.d.ts +1 -1
  46. package/lib/es2018/index.d.ts +1 -0
  47. package/lib/es2018/index.js +1 -0
  48. package/lib/es2018/index.js.map +1 -1
  49. package/lib/es2018/sorted-set.d.ts +10 -0
  50. package/lib/es2018/sorted-set.js +30 -0
  51. package/lib/es2018/sorted-set.js.map +1 -0
  52. package/lib/es2018/sparse-map.d.ts +3 -3
  53. package/lib/es2018/sparse-set.d.ts +2 -0
  54. package/lib/es2018/sparse-set.js +11 -2
  55. package/lib/es2018/sparse-set.js.map +1 -1
  56. package/lib/es2018/trie-map.d.ts +3 -3
  57. package/lib/es2018/typed-sparse-map.d.ts +5 -9
  58. package/lib/es2018/typed-sparse-map.js +23 -20
  59. package/lib/es2018/typed-sparse-map.js.map +1 -1
  60. package/lib/es2018/typed-sparse-set.d.ts +3 -5
  61. package/lib/es2018/typed-sparse-set.js +19 -9
  62. package/lib/es2018/typed-sparse-set.js.map +1 -1
  63. package/lib/es2018/utils/skip-list.d.ts +24 -0
  64. package/lib/es2018/utils/skip-list.js +155 -0
  65. package/lib/es2018/utils/skip-list.js.map +1 -0
  66. package/package.json +2 -2
package/README.md CHANGED
@@ -81,7 +81,7 @@ class HashSet<V, Hash = unknown> implements Iterable<V> {
81
81
  delete(value: V): boolean
82
82
  has(value: V): boolean
83
83
  clear(): void
84
- values(): Iterable<V>
84
+ values(): IterableIterator<V>
85
85
  }
86
86
  ```
87
87
 
@@ -151,9 +151,9 @@ class Queue<T> {
151
151
  class TrieMap<K extends Iterable<T>, V, T = unknown> {
152
152
  get [Symbol.toStringTag](): string
153
153
 
154
- keys(): Iterable<T[]>
155
- values(): Iterable<V>
156
- entries(): Iterable<[key: T[], value: V]>
154
+ keys(): IterableIterator<T[]>
155
+ values(): IterableIterator<V>
156
+ entries(): IterableIterator<[key: T[], value: V]>
157
157
 
158
158
  set(key: K, value: V): this
159
159
  has(key: K): boolean
@@ -213,6 +213,10 @@ class SparseSet implements Iterable<number> {
213
213
  get [Symbol.toStringTag](): string
214
214
  get [Symbol.iterator](): IterableIterator<number>
215
215
 
216
+ constructor(array?: number[])
217
+
218
+ values(): IterableIterator<number>
219
+
216
220
  has(value: number): boolean
217
221
  add(value: number): void
218
222
  delete(value: number): void
@@ -224,9 +228,9 @@ class SparseSet implements Iterable<number> {
224
228
  class SparseMap<T> {
225
229
  get [Symbol.toStringTag](): string
226
230
 
227
- entries(): Iterable<[key: number, value: T]>
228
- keys(): Iterable<number>
229
- values(): Iterable<T>
231
+ entries(): IterableIterator<[key: number, value: T]>
232
+ keys(): IterableIterator<number>
233
+ values(): IterableIterator<T>
230
234
 
231
235
  has(key: number): boolean
232
236
  get(key: number): T | undefined
@@ -235,11 +239,19 @@ class SparseMap<T> {
235
239
  }
236
240
  ```
237
241
 
238
- ### TypedSparseSet
242
+ ### DynamicTypedArray
239
243
  ```ts
240
- class TypedSparseSet<T extends UnsignedTypedArrayConstructor> {
244
+ class DynamicTypedArray<T extends TypedArrayConstructor> {
241
245
  get [Symbol.toStringTag](): string
242
- get [Symbol.iterator](): IterableIterator<number>
246
+ get capacity(): number
247
+ get length(): number
248
+ readonly growthFactor: number
249
+
250
+ /**
251
+ * Note that `DynamicTypedArray` cannot respond to any operations on the internal array,
252
+ * you must ensure that indexes accessed are less than the length of `DynamicTypedArray`.
253
+ */
254
+ get internalTypedArray(): TypedArrayOfConstructor<T>
243
255
 
244
256
  constructor(
245
257
  typedArrayConstructor: T
@@ -249,8 +261,25 @@ class TypedSparseSet<T extends UnsignedTypedArrayConstructor> {
249
261
  }
250
262
  )
251
263
 
252
- add(value: number): void
264
+ set(index: number, value: number): void
265
+ get(index: number): number | undefined
266
+ push(...values: number[]): void
267
+ pop(): number | undefined
268
+ }
269
+ ```
270
+
271
+ ### TypedSparseSet
272
+ ```ts
273
+ class TypedSparseSet<T extends UnsignedTypedArrayConstructor> {
274
+ get [Symbol.toStringTag](): string
275
+ get [Symbol.iterator](): IterableIterator<number>
276
+
277
+ constructor(array: DynamicTypedArray<T>)
278
+
279
+ values(): IterableIterator<number>
280
+
253
281
  has(value: number): boolean
282
+ add(value: number): void
254
283
  delete(value: number): void
255
284
  }
256
285
  ```
@@ -260,17 +289,11 @@ class TypedSparseSet<T extends UnsignedTypedArrayConstructor> {
260
289
  class TypedSparseMap<T extends TypedArrayConstructor> {
261
290
  get [Symbol.toStringTag](): string
262
291
 
263
- constructor(
264
- typedArrayConstructor: T
265
- , options?: {
266
- capacity?: number = 0
267
- growthFactor?: number = 1.5
268
- }
269
- )
292
+ constructor(array: DynamicTypedArray<T>)
270
293
 
271
- entries(): Iterable<[key: number, value: number]>
272
- keys(): Iterable<number>
273
- values(): Iterable<number>
294
+ entries(): IterableIterator<[key: number, value: number]>
295
+ keys(): IterableIterator<number>
296
+ values(): IterableIterator<number>
274
297
 
275
298
  has(key: number): boolean
276
299
  get(key: number): T | undefined
@@ -279,30 +302,17 @@ class TypedSparseMap<T extends TypedArrayConstructor> {
279
302
  }
280
303
  ```
281
304
 
282
- ### DynamicTypedArray
305
+ ### SortedSet
283
306
  ```ts
284
- class DynamicTypedArray<T extends TypedArrayConstructor> {
307
+ class SortedSet<T> {
285
308
  get [Symbol.toStringTag](): string
286
- get capacity(): number
287
- get length(): number
288
-
289
- /**
290
- * Note that `DynamicTypedArray` cannot respond to any operations on the internal array,
291
- * you must ensure that indexes accessed are less than the length of `DynamicTypedArray`.
292
- */
293
- get internalTypedArray(): TypedArrayOfConstructor<T>
309
+ [Symbol.iterator](): IterableIterator<T>
294
310
 
295
- constructor(
296
- typedArrayConstructor: T
297
- , options?: {
298
- capacity?: number = 0
299
- growthFactor?: number = 1.5
300
- }
301
- )
311
+ constructor(compare: (a: T, b: T) => number)
302
312
 
303
- set(index: number, value: number): void
304
- get(index: number): number | undefined
305
- push(...values: number[]): void
306
- pop(): number | undefined
313
+ values(): IterableIterator<T>
314
+ has(value: T): boolean
315
+ add(value: T): void
316
+ delete(value: T): void
307
317
  }
308
318
  ```