/** * The moral equivalent of `if (!p) exp` * * @tsplus static effect/core/stm/STM.Aspects unless * @tsplus pipeable effect/core/stm/STM unless */ export function unless(predicate: LazyArg) { return (self: STM): STM> => STM.suspend(predicate() ? STM.none : self.asSome) }