UNPKG

472 BJavaScriptView Raw
1/**
2 * Utility module to work with sets.
3 *
4 * @module set
5 */
6
7export const create = () => new Set()
8
9/**
10 * @template T
11 * @param {Set<T>} set
12 * @return {Array<T>}
13 */
14export const toArray = set => Array.from(set)
15
16/**
17 * @template T
18 * @param {Set<T>} set
19 * @return {T}
20 */
21export const first = set =>
22 set.values().next().value || undefined
23
24/**
25 * @template T
26 * @param {Iterable<T>} entries
27 * @return {Set<T>}
28 */
29export const from = entries => new Set(entries)