UNPKG

@monstermann/fn

Version:

A utility library for TypeScript.

28 lines (26 loc) 649 B
import { dfdlT } from "@monstermann/dfdl"; import { cloneSet } from "@monstermann/remmi"; //#region src/set/remove.ts /** * `remove(target, value)` * * Removes a `value` from the `target` set and returns a new set. * * ```ts * remove(new Set([1, 2, 3]), 2); // Set([1, 3]) * remove(new Set([1, 2, 3]), 4); // Set([1, 2, 3]) * ``` * * ```ts * pipe(new Set([1, 2, 3]), remove(2)); // Set([1, 3]) * pipe(new Set([1, 2, 3]), remove(4)); // Set([1, 2, 3]) * ``` */ const remove = dfdlT((target, value) => { if (!target.has(value)) return target; target = cloneSet(target); target.delete(value); return target; }, 2); //#endregion export { remove };