UNPKG

496 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 return set.values().next().value || undefined
23}
24
25/**
26 * @template T
27 * @param {Iterable<T>} entries
28 * @return {Set<T>}
29 */
30export const from = entries => {
31 return new Set(entries)
32}