/** * Retains bindings matching predicate. * * @tsplus static effect/core/stm/TMap.Aspects retainIfDiscard * @tsplus pipeable effect/core/stm/TMap retainIfDiscard */ export function retainIfDiscard(f: (kv: readonly [K, V]) => boolean) { return (self: TMap): STM => self.removeIfDiscard((_) => !f(_)) }