/**
* Repeats this effect until its value is equal to the specified value or
* until the first failure.
*
* @tsplus static effect/core/io/Effect.Aspects repeatUntilEquals
* @tsplus pipeable effect/core/io/Effect repeatUntilEquals
*/
export function repeatUntilEquals(E: Equivalence, a: A) {
return (self: Effect): Effect => self.repeatUntil((_) => E.equals(_, a))
}