removeOrElse
removeOrElse(target, value, orElse)
Removes a value
from the target
set and returns a new set. If the value doesn't exist in the set, calls the orElse
function with the target set and returns its result.
ts
removeOrElse(new Set([1, 2, 3]), 2, (set) => set.size); // Set([1, 3])
removeOrElse(new Set([1, 2, 3]), 4, (set) => set.size); // 3
ts
pipe(
new Set([1, 2, 3]),
removeOrElse(2, (set) => set.size),
); // Set([1, 3])
pipe(
new Set([1, 2, 3]),
removeOrElse(4, (set) => set.size),
); // 3