/**
* Atomically transforms the set into the union of itself and the provided
* set.
*
* @tsplus static effect/core/stm/TSet.Aspects union
* @tsplus pipeable effect/core/stm/TSet union
*/
export function union(other: TSet) {
return (self: TSet): STM => other.forEach((_) => self.put(_))
}