effect 3.14.5 → 3.14.7

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.
@@ -210,7 +210,7 @@ const summary = key => {
210
210
  if (item != null) {
211
211
  const [t, v] = item;
212
212
  const age = Duration.millis(now - t);
213
- if (Duration.greaterThanOrEqualTo(age, Duration.zero) && age <= maxAge) {
213
+ if (Duration.greaterThanOrEqualTo(age, Duration.zero) && Duration.lessThanOrEqualTo(age, maxAge)) {
214
214
  builder.push(v);
215
215
  }
216
216
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","names":["Arr","_interopRequireWildcard","require","Duration","_Function","number","Option","_Pipeable","metricState","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","MetricHookSymbolKey","MetricHookTypeId","exports","Symbol","for","metricHookVariance","_In","_","_Out","make","options","pipe","pipeArguments","arguments","onModify","dual","self","f","update","modify","input","onUpdate","bigint0","BigInt","counter","key","sum","keyType","bigint","canUpdate","incremental","value","_value","frequency","values","Map","word","preregisteredWords","slotCount","gauge","_key","startAt","v","histogram","bounds","boundaries","size","length","Uint32Array","Float32Array","count","min","Number","MAX_VALUE","max","MIN_VALUE","sort","Order","map","from","to","mid","Math","floor","boundary","getBuckets","builder","allocate","cumulated","buckets","summary","error","maxAge","maxSize","quantiles","sortedQuantiles","head","snapshot","now","item","age","millis","greaterThanOrEqualTo","zero","push","calculateQuantiles","observe","timestamp","target","Date","sortedSamples","sampleCount","isNonEmptyReadonlyArray","empty","tail","slice","resolvedHead","resolveQuantile","none","resolved","of","forEach","quantile","consumed","rest","rq","current","error_1","sampleCount_1","current_1","consumed_1","quantile_1","rest_1","error_2","sampleCount_2","current_2","consumed_2","quantile_2","rest_2","some","lastNonEmpty","sameHead","span","desired","allowedError","candConsumed","candError","abs","_tag","prevError","Error"],"sources":["../../../../src/internal/metric/hook.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"hook.js","names":["Arr","_interopRequireWildcard","require","Duration","_Function","number","Option","_Pipeable","metricState","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","MetricHookSymbolKey","MetricHookTypeId","exports","Symbol","for","metricHookVariance","_In","_","_Out","make","options","pipe","pipeArguments","arguments","onModify","dual","self","f","update","modify","input","onUpdate","bigint0","BigInt","counter","key","sum","keyType","bigint","canUpdate","incremental","value","_value","frequency","values","Map","word","preregisteredWords","slotCount","gauge","_key","startAt","v","histogram","bounds","boundaries","size","length","Uint32Array","Float32Array","count","min","Number","MAX_VALUE","max","MIN_VALUE","sort","Order","map","from","to","mid","Math","floor","boundary","getBuckets","builder","allocate","cumulated","buckets","summary","error","maxAge","maxSize","quantiles","sortedQuantiles","head","snapshot","now","item","age","millis","greaterThanOrEqualTo","zero","lessThanOrEqualTo","push","calculateQuantiles","observe","timestamp","target","Date","sortedSamples","sampleCount","isNonEmptyReadonlyArray","empty","tail","slice","resolvedHead","resolveQuantile","none","resolved","of","forEach","quantile","consumed","rest","rq","current","error_1","sampleCount_1","current_1","consumed_1","quantile_1","rest_1","error_2","sampleCount_2","current_2","consumed_2","quantile_2","rest_2","some","lastNonEmpty","sameHead","span","desired","allowedError","candConsumed","candError","abs","_tag","prevError","Error"],"sources":["../../../../src/internal/metric/hook.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.setCurrentVersion = exports.getCurrentVersion = void 0;
7
- let moduleVersion = "3.14.5";
7
+ let moduleVersion = "3.14.7";
8
8
  const getCurrentVersion = () => moduleVersion;
9
9
  exports.getCurrentVersion = getCurrentVersion;
10
10
  const setCurrentVersion = version => {
@@ -14,78 +14,533 @@ export interface MutableHashSet<out V> extends Iterable<V>, Pipeable, Inspectabl
14
14
  readonly [TypeId]: TypeId;
15
15
  }
16
16
  /**
17
+ * Creates an empty mutable hash set.
18
+ *
19
+ * This function initializes and returns an empty `MutableHashSet` instance,
20
+ * which allows for efficient storage and manipulation of unique elements.
21
+ *
22
+ * Time complexity: **`O(1)`**
23
+ *
24
+ * @memberof MutableHashSet
17
25
  * @since 2.0.0
18
26
  * @category constructors
27
+ * @example
28
+ *
29
+ * ```ts
30
+ * import { MutableHashSet } from "effect"
31
+ *
32
+ * type T = unknown // replace with your type
33
+ *
34
+ * // in places where the type can't be inferred, replace with your type
35
+ * const set: MutableHashSet.MutableHashSet<T> = MutableHashSet.empty<T>()
36
+ * ```
37
+ *
38
+ * @template K - The type of the elements to be stored in the hash set. Defaults
39
+ * to `never` if not specified.
40
+ * @returns A new mutable instance of `MutableHashSet` containing no elements
41
+ * for the specified type `K`.
42
+ * @see Other `MutableHashSet` constructors are {@link module:MutableHashSet.make} {@link module:MutableHashSet.fromIterable}
19
43
  */
20
44
  export declare const empty: <K = never>() => MutableHashSet<K>;
21
45
  /**
22
46
  * Creates a new `MutableHashSet` from an iterable collection of values.
47
+ * Duplicate values are omitted.
48
+ *
49
+ * Time complexity: **`O(n)`** where n is the number of elements in the iterable
50
+ *
51
+ * Creating a `MutableHashSet` from an {@link Array}
52
+ *
53
+ * ```ts
54
+ * import { MutableHashSet } from "effect"
55
+ *
56
+ * const array: Iterable<number> = [1, 2, 3, 4, 5, 1, 2, 3] // Array<T> is also Iterable<T>
57
+ * const mutableHashSet: MutableHashSet.MutableHashSet<number> =
58
+ * MutableHashSet.fromIterable(array)
59
+ *
60
+ * console.log(
61
+ * // MutableHashSet.MutableHashSet<T> is also an Iterable<T>
62
+ * Array.from(mutableHashSet)
63
+ * ) // Output: [1, 2, 3, 4, 5]
64
+ * ```
65
+ *
66
+ * Creating a `MutableHashSet` from a {@link Set}
67
+ *
68
+ * ```ts
69
+ * import { MutableHashSet, pipe } from "effect"
70
+ *
71
+ * console.log(
72
+ * pipe(
73
+ * // Set<string> is an Iterable<string>
74
+ * new Set(["apple", "banana", "orange", "apple"]),
75
+ * // constructs MutableHashSet from an Iterable Set
76
+ * MutableHashSet.fromIterable,
77
+ * // since MutableHashSet it is itself an Iterable, we can pass it to other functions expecting an Iterable
78
+ * Array.from
79
+ * )
80
+ * ) // Output: ["apple", "banana", "orange"]
81
+ * ```
82
+ *
83
+ * Creating a `MutableHashSet` from a {@link Generator}
84
+ *
85
+ * ```ts
86
+ * import { MutableHashSet } from "effect"
87
+ *
88
+ * // Generator functions return iterables
89
+ * function* fibonacci(n: number): Generator<number, void, never> {
90
+ * let [a, b] = [0, 1]
91
+ * for (let i = 0; i < n; i++) {
92
+ * yield a
93
+ * ;[a, b] = [b, a + b]
94
+ * }
95
+ * }
23
96
  *
97
+ * // Create a MutableHashSet from the first 10 Fibonacci numbers
98
+ * const fibonacciSet = MutableHashSet.fromIterable(fibonacci(10))
99
+ *
100
+ * console.log(Array.from(fibonacciSet))
101
+ * // Outputs: [0, 1, 2, 3, 5, 8, 13, 21, 34] but in unsorted order
102
+ * ```
103
+ *
104
+ * Creating a `MutableHashSet` from another {@link module:MutableHashSet}
105
+ *
106
+ * ```ts
107
+ * import { MutableHashSet, pipe } from "effect"
108
+ *
109
+ * console.log(
110
+ * pipe(
111
+ * MutableHashSet.make(1, 2, 3, 4),
112
+ * MutableHashSet.fromIterable,
113
+ * Array.from
114
+ * )
115
+ * ) // Output: [1, 2, 3, 4]
116
+ * ```
117
+ *
118
+ * Creating a `MutableHashSet` from an {@link module:HashSet}
119
+ *
120
+ * ```ts
121
+ * import { HashSet, MutableHashSet, pipe } from "effect"
122
+ *
123
+ * console.log(
124
+ * pipe(
125
+ * HashSet.make(1, 2, 3, 4), // it works also with its immutable HashSet sibling
126
+ * MutableHashSet.fromIterable,
127
+ * Array.from
128
+ * )
129
+ * ) // Output: [1, 2, 3, 4]
130
+ * ```
131
+ *
132
+ * Creating a `MutableHashSet` from other Effect's data structures like
133
+ * {@link Chunk}
134
+ *
135
+ * ```ts
136
+ * import { Chunk, MutableHashSet, pipe } from "effect"
137
+ *
138
+ * console.log(
139
+ * pipe(
140
+ * Chunk.make(1, 2, 3, 4), // Chunk is also an Iterable<T>
141
+ * MutableHashSet.fromIterable,
142
+ * Array.from
143
+ * )
144
+ * ) // Outputs: [1, 2, 3, 4]
145
+ * ```
146
+ *
147
+ * @memberof MutableHashSet
24
148
  * @since 2.0.0
25
149
  * @category constructors
150
+ * @template K - The type of elements to be stored in the resulting
151
+ * `MutableHashSet`.
152
+ * @param keys - An `Iterable` collection containing the keys to be added to the
153
+ * `MutableHashSet`.
154
+ * @returns A new `MutableHashSet` containing just the unique elements from the
155
+ * provided iterable.
156
+ * @see Other `MutableHashSet` constructors are {@link module:MutableHashSet.empty} {@link module:MutableHashSet.make}
26
157
  */
27
158
  export declare const fromIterable: <K = never>(keys: Iterable<K>) => MutableHashSet<K>;
28
159
  /**
160
+ * Construct a new `MutableHashSet` from a variable number of values.
161
+ *
162
+ * Time complexity: **`O(n)`** where n is the number of elements
163
+ *
164
+ * @memberof MutableHashSet
29
165
  * @since 2.0.0
30
166
  * @category constructors
167
+ * @example
168
+ *
169
+ * ```ts
170
+ * import { Equal, Hash, MutableHashSet } from "effect"
171
+ * import assert from "node:assert/strict"
172
+ *
173
+ * class Character implements Equal.Equal {
174
+ * readonly name: string
175
+ * readonly trait: string
176
+ *
177
+ * constructor(name: string, trait: string) {
178
+ * this.name = name
179
+ * this.trait = trait
180
+ * }
181
+ *
182
+ * // Define equality based on name, and trait
183
+ * [Equal.symbol](that: Equal.Equal): boolean {
184
+ * if (that instanceof Character) {
185
+ * return (
186
+ * Equal.equals(this.name, that.name) &&
187
+ * Equal.equals(this.trait, that.trait)
188
+ * )
189
+ * }
190
+ * return false
191
+ * }
192
+ *
193
+ * // Generate a hash code based on the sum of the character's name and trait
194
+ * [Hash.symbol](): number {
195
+ * return Hash.hash(this.name + this.trait)
196
+ * }
197
+ *
198
+ * static readonly of = (name: string, trait: string): Character => {
199
+ * return new Character(name, trait)
200
+ * }
201
+ * }
202
+ *
203
+ * const mutableCharacterHashSet = MutableHashSet.make(
204
+ * Character.of("Alice", "Curious"),
205
+ * Character.of("Alice", "Curious"),
206
+ * Character.of("White Rabbit", "Always late"),
207
+ * Character.of("Mad Hatter", "Tea enthusiast")
208
+ * )
209
+ *
210
+ * assert.equal(
211
+ * MutableHashSet.has(
212
+ * mutableCharacterHashSet,
213
+ * Character.of("Alice", "Curious")
214
+ * ),
215
+ * true
216
+ * )
217
+ * assert.equal(
218
+ * MutableHashSet.has(
219
+ * mutableCharacterHashSet,
220
+ * Character.of("Fluffy", "Kind")
221
+ * ),
222
+ * false
223
+ * )
224
+ * ```
225
+ *
226
+ * @see Other `MutableHashSet` constructors are {@link module:MutableHashSet.fromIterable} {@link module:MutableHashSet.empty}
31
227
  */
32
228
  export declare const make: <Keys extends ReadonlyArray<unknown>>(...keys: Keys) => MutableHashSet<Keys[number]>;
33
229
  /**
230
+ * **Checks** whether the `MutableHashSet` contains the given element, and
231
+ * **adds** it if not.
232
+ *
233
+ * Time complexity: **`O(1)`** average
234
+ *
235
+ * **Syntax**
236
+ *
237
+ * ```ts
238
+ * import { MutableHashSet, pipe } from "effect"
239
+ *
240
+ * // with data-last, a.k.a. pipeable API
241
+ * pipe(
242
+ * MutableHashSet.empty(),
243
+ * MutableHashSet.add(0),
244
+ * MutableHashSet.add(0)
245
+ * )
246
+ *
247
+ * // or piped with the pipe function
248
+ * MutableHashSet.empty().pipe(MutableHashSet.add(0))
249
+ *
250
+ * // or with data-first API
251
+ * MutableHashSet.add(MutableHashSet.empty(), 0)
252
+ * ```
253
+ *
254
+ * @memberof MutableHashSet
34
255
  * @since 2.0.0
35
256
  * @category elements
257
+ * @see Other `MutableHashSet` elements are {@link module:MutableHashSet.remove} {@link module:MutableHashSet.size} {@link module:MutableHashSet.clear} {@link module:MutableHashSet.has}
36
258
  */
37
259
  export declare const add: {
38
260
  /**
39
- * @since 2.0.0
40
- * @category elements
261
+ * `data-last` a.k.a. `pipeable` API
262
+ *
263
+ * ```ts
264
+ * import { MutableHashSet, pipe } from "effect"
265
+ * import assert from "node:assert/strict"
266
+ *
267
+ * const mutableHashSet = pipe(
268
+ * MutableHashSet.empty<number>(), // MutableHashSet.MutableHashSet<number>
269
+ * MutableHashSet.add(0),
270
+ * MutableHashSet.add(1),
271
+ * MutableHashSet.add(1),
272
+ * MutableHashSet.add(2)
273
+ * )
274
+ *
275
+ * assert.deepStrictEqual(
276
+ * Array.from(mutableHashSet), // remember that MutableHashSet is also an Iterable
277
+ * Array.of(0, 1, 2)
278
+ * )
279
+ * ```
280
+ *
281
+ * @template V - The type of elements stored in the `MutableHashSet`.
282
+ * @param key - The key to be added to the `MutableHashSet` if not already
283
+ * present.
284
+ * @returns A function that accepts a `MutableHashSet` and returns the
285
+ * reference of the updated `MutableHashSet` including the key.
41
286
  */
42
287
  <V>(key: V): (self: MutableHashSet<V>) => MutableHashSet<V>;
43
288
  /**
44
- * @since 2.0.0
45
- * @category elements
289
+ * `data-first` API
290
+ *
291
+ * ```ts
292
+ * import { MutableHashSet } from "effect"
293
+ * import assert from "node:assert/strict"
294
+ *
295
+ * const empty = MutableHashSet.empty<number>()
296
+ * const withZero = MutableHashSet.add(empty, 0)
297
+ * const withOne = MutableHashSet.add(withZero, 1)
298
+ * const withTwo = MutableHashSet.add(withOne, 2)
299
+ * const withTwoTwo = MutableHashSet.add(withTwo, 2)
300
+ *
301
+ * assert(Object.is(withTwoTwo, empty)) // proof that it does mutate the original set
302
+ *
303
+ * assert.deepStrictEqual(
304
+ * Array.from(withTwoTwo), // remember that MutableHashSet is also an Iterable
305
+ * Array.of(0, 1, 2)
306
+ * )
307
+ * ```
308
+ *
309
+ * @template V - The type of elements stored in the `MutableHashSet`.
310
+ * @param self - The `MutableHashSet` instance from which the key should be
311
+ * added to.
312
+ * @param key - The key to be added to the `MutableHashSet` if not already
313
+ * present.
314
+ * @returns The reference of the updated `MutableHashSet` including the key.
46
315
  */
47
316
  <V>(self: MutableHashSet<V>, key: V): MutableHashSet<V>;
48
317
  };
49
318
  /**
319
+ * Checks if the specified value exists in the `MutableHashSet`.
320
+ *
321
+ * Time complexity: `O(1)` average
322
+ *
323
+ * **Syntax**
324
+ *
325
+ * ```ts
326
+ * import { MutableHashSet, pipe } from "effect"
327
+ * import assert from "node:assert/strict"
328
+ *
329
+ * assert.equal(
330
+ * // with `data-last`, a.k.a. `pipeable` API
331
+ * pipe(MutableHashSet.make(0, 1, 2), MutableHashSet.has(3)),
332
+ * false
333
+ * )
334
+ *
335
+ * assert.equal(
336
+ * // or piped with the pipe function
337
+ * MutableHashSet.make(0, 1, 2).pipe(MutableHashSet.has(3)),
338
+ * false
339
+ * )
340
+ *
341
+ * assert.equal(
342
+ * // or with `data-first` API
343
+ * MutableHashSet.has(MutableHashSet.make(0, 1, 2), 3),
344
+ * false
345
+ * )
346
+ * ```
347
+ *
348
+ * @memberof MutableHashSet
50
349
  * @since 2.0.0
51
350
  * @category elements
351
+ * @see Other `MutableHashSet` elements are {@link module:MutableHashSet.add} {@link module:MutableHashSet.remove} {@link module:MutableHashSet.size} {@link module:MutableHashSet.clear}
52
352
  */
53
353
  export declare const has: {
54
354
  /**
55
- * @since 2.0.0
56
- * @category elements
355
+ * `data-last` a.k.a. `pipeable` API
356
+ *
357
+ * ```ts
358
+ * import * as assert from "node:assert/strict"
359
+ * import { MutableHashSet, pipe } from "effect"
360
+ *
361
+ * const set = MutableHashSet.make(0, 1, 2)
362
+ *
363
+ * assert.equal(pipe(set, MutableHashSet.has(0)), true)
364
+ * assert.equal(pipe(set, MutableHashSet.has(1)), true)
365
+ * assert.equal(pipe(set, MutableHashSet.has(2)), true)
366
+ * assert.equal(pipe(set, MutableHashSet.has(3)), false)
367
+ * ```
57
368
  */
58
369
  <V>(key: V): (self: MutableHashSet<V>) => boolean;
59
370
  /**
60
- * @since 2.0.0
61
- * @category elements
371
+ * `data-first` API
372
+ *
373
+ * ```ts
374
+ * import * as assert from "node:assert/strict"
375
+ * import { MutableHashSet, pipe } from "effect"
376
+ *
377
+ * const set = MutableHashSet.make(0, 1, 2)
378
+ *
379
+ * assert.equal(MutableHashSet.has(set, 0), true)
380
+ * assert.equal(MutableHashSet.has(set, 1), true)
381
+ * assert.equal(MutableHashSet.has(set, 2), true)
382
+ * assert.equal(MutableHashSet.has(set, 3), false)
383
+ * ```
62
384
  */
63
385
  <V>(self: MutableHashSet<V>, key: V): boolean;
64
386
  };
65
387
  /**
388
+ * Removes a value from the `MutableHashSet`.
389
+ *
390
+ * Time complexity: **`O(1)`** average
391
+ *
392
+ * **Syntax**
393
+ *
394
+ * ```ts
395
+ * import { MutableHashSet, pipe } from "effect"
396
+ * import assert from "node:assert/strict"
397
+ *
398
+ * assert.equal(
399
+ * // with `data-last`, a.k.a. `pipeable` API
400
+ * pipe(
401
+ * MutableHashSet.make(0, 1, 2),
402
+ * MutableHashSet.remove(0),
403
+ * MutableHashSet.has(0)
404
+ * ),
405
+ * false
406
+ * )
407
+ *
408
+ * assert.equal(
409
+ * // or piped with the pipe function
410
+ * MutableHashSet.make(0, 1, 2).pipe(
411
+ * MutableHashSet.remove(0),
412
+ * MutableHashSet.has(0)
413
+ * ),
414
+ * false
415
+ * )
416
+ *
417
+ * assert.equal(
418
+ * // or with `data-first` API
419
+ * MutableHashSet.remove(MutableHashSet.make(0, 1, 2), 0).pipe(
420
+ * MutableHashSet.has(0)
421
+ * ),
422
+ * false
423
+ * )
424
+ * ```
425
+ *
426
+ * @memberof MutableHashSet
66
427
  * @since 2.0.0
67
428
  * @category elements
429
+ * @see Other `MutableHashSet` elements are {@link module:MutableHashSet.add} {@link module:MutableHashSet.has} {@link module:MutableHashSet.size} {@link module:MutableHashSet.clear}
68
430
  */
69
431
  export declare const remove: {
70
432
  /**
71
- * @since 2.0.0
72
- * @category elements
433
+ * `data-last` a.k.a. `pipeable` API
434
+ *
435
+ * ```ts
436
+ * import { MutableHashSet, pipe } from "effect"
437
+ * import assert from "node:assert/strict"
438
+ *
439
+ * const set: MutableHashSet.MutableHashSet<number> = MutableHashSet.make(
440
+ * 0,
441
+ * 1,
442
+ * 2
443
+ * )
444
+ * const result: MutableHashSet.MutableHashSet<number> = pipe(
445
+ * set,
446
+ * MutableHashSet.remove(0)
447
+ * )
448
+ *
449
+ * assert(Object.is(set, result)) // set and result have the same identity
450
+ * assert.equal(pipe(result, MutableHashSet.has(0)), false) // it has correctly removed 0
451
+ * assert.equal(pipe(set, MutableHashSet.has(0)), false) // another proof that we are mutating the original MutableHashSet
452
+ * assert.equal(pipe(result, MutableHashSet.has(1)), true)
453
+ * assert.equal(pipe(result, MutableHashSet.has(2)), true)
454
+ * ```
455
+ *
456
+ * @template V - The type of the elements in the `MutableHashSet`.
457
+ * @param key - The key to be removed from the `MutableHashSet`.
458
+ * @returns A function that takes a `MutableHashSet` as input and returns the
459
+ * reference to the same `MutableHashSet` with the specified key removed.
73
460
  */
74
461
  <V>(key: V): (self: MutableHashSet<V>) => MutableHashSet<V>;
75
462
  /**
76
- * @since 2.0.0
77
- * @category elements
463
+ * `data-first` API
464
+ *
465
+ * ```ts
466
+ * import { MutableHashSet, pipe } from "effect"
467
+ * import assert from "node:assert/strict"
468
+ *
469
+ * const set = MutableHashSet.make(0, 1, 2)
470
+ * const result = MutableHashSet.remove(set, 0)
471
+ *
472
+ * assert(Object.is(set, result)) // set and result have the same identity
473
+ * assert.equal(MutableHashSet.has(result, 0), false) // it has correctly removed 0
474
+ * assert.equal(MutableHashSet.has(set, 0), false) // it mutates the original MutableHashSet
475
+ * assert.equal(MutableHashSet.has(result, 1), true)
476
+ * assert.equal(MutableHashSet.has(result, 2), true)
477
+ * ```
478
+ *
479
+ * @template V - The type of the elements in the `MutableHashSet`.
480
+ * @param self - The `MutableHashSet` to which the key will be removed from.
481
+ * @param key - The value to be removed from the `MutableHashSet` if present.
482
+ * @returns The reference to the updated `MutableHashSet`.
78
483
  */
79
484
  <V>(self: MutableHashSet<V>, key: V): MutableHashSet<V>;
80
485
  };
81
486
  /**
487
+ * Calculates the number of values in the `HashSet`.
488
+ *
489
+ * Time complexity: **`O(1)`**
490
+ *
491
+ * @memberof MutableHashSet
82
492
  * @since 2.0.0
83
493
  * @category elements
494
+ * @example
495
+ *
496
+ * ```ts
497
+ * import { MutableHashSet } from "effect"
498
+ * import assert from "node:assert/strict"
499
+ *
500
+ * assert.equal(MutableHashSet.size(MutableHashSet.empty()), 0)
501
+ *
502
+ * assert.equal(
503
+ * MutableHashSet.size(MutableHashSet.make(1, 2, 2, 3, 4, 3)),
504
+ * 4
505
+ * )
506
+ * ```
507
+ *
508
+ * @template V - The type of the elements to be stored in the `MutableHashSet`.
509
+ * @param self - The `MutableHashSet` instance for which the size is to be
510
+ * determined.
511
+ * @returns The total number of elements within the `MutableHashSet`.
512
+ * @see Other `MutableHashSet` elements are {@link module:MutableHashSet.add} {@link module:MutableHashSet.has} {@link module:MutableHashSet.remove} {@link module:MutableHashSet.clear}
84
513
  */
85
514
  export declare const size: <V>(self: MutableHashSet<V>) => number;
86
515
  /**
516
+ * Removes all values from the `MutableHashSet`.
517
+ *
518
+ * This function operates by delegating the clearing action to the underlying
519
+ * key map associated with the given `MutableHashSet`. It ensures that the hash
520
+ * set becomes empty while maintaining its existence and structure.
521
+ *
522
+ * @memberof MutableHashSet
87
523
  * @since 2.0.0
88
524
  * @category elements
525
+ * @example
526
+ *
527
+ * ```ts
528
+ * import { MutableHashSet, pipe } from "effect"
529
+ * import assert from "node:assert/strict"
530
+ *
531
+ * assert.deepStrictEqual(
532
+ * pipe(
533
+ * MutableHashSet.make(1, 2, 3, 4),
534
+ * MutableHashSet.clear,
535
+ * MutableHashSet.size
536
+ * ),
537
+ * 0
538
+ * )
539
+ * ```
540
+ *
541
+ * @param self - The `MutableHashSet` to clear.
542
+ * @returns The same `MutableHashSet` after all elements have been removed.
543
+ * @see Other `MutableHashSet` elements are {@link module:MutableHashSet.add} {@link module:MutableHashSet.has} {@link module:MutableHashSet.remove} {@link module:MutableHashSet.size}
89
544
  */
90
545
  export declare const clear: <V>(self: MutableHashSet<V>) => MutableHashSet<V>;
91
546
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"MutableHashSet.d.ts","sourceRoot":"","sources":["../../src/MutableHashSet.ts"],"names":[],"mappings":"AAIA,OAAO,EAAU,KAAK,WAAW,EAA6B,MAAM,kBAAkB,CAAA;AAEtF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAG7C,QAAA,MAAM,MAAM,EAAE,OAAO,MAAsD,CAAA;AAE3E;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,GAAG,CAAC,CAAC,CAAE,SAAQ,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW;IAC/E,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAI1B;AA8BD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,eAAa,cAAc,CAAC,CAAC,CAAwC,CAAA;AAE5F;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,gBAAgB,QAAQ,CAAC,CAAC,CAAC,KAAG,cAAc,CAAC,CAAC,CACM,CAAA;AAElF;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,IAAI,SAAS,aAAa,CAAC,OAAO,CAAC,WAC7C,IAAI,KACZ,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAuB,CAAA;AAErD;;;GAGG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB;;;OAGG;IACH,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,CAAA;IAC3D;;;OAGG;IACH,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;CAIc,CAAA;AAEvE;;;GAGG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB;;;OAGG;IACH,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,OAAO,CAAA;IACjD;;;OAGG;IACH,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAA;CAIU,CAAA;AAEzD;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB;;;OAGG;IACH,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,CAAA;IAC3D;;;OAGG;IACH,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;CAIW,CAAA;AAEpE;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,QAAQ,cAAc,CAAC,CAAC,CAAC,KAAG,MAA0C,CAAA;AAE5F;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,QAAQ,cAAc,CAAC,CAAC,CAAC,KAAG,cAAc,CAAC,CAAC,CAA8C,CAAA"}
1
+ {"version":3,"file":"MutableHashSet.d.ts","sourceRoot":"","sources":["../../src/MutableHashSet.ts"],"names":[],"mappings":"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"}