than_
05/16/2022, 9:14 AMsealed interface DomainError
object SomeDomainError: DomainError
fun foo(): Effect<DomainError, Unit> = TODO()
fun bar(): Effect<SomeDomainError, Unit> = TODO()
fun baz() = effect<DomainError, Unit> {
foo().bind()
bar().bind()
}
the problem is I cannot bind result of bar
even though SomeDomainError
is a DomainError
. Is this known limitation, oversight, or weirdness on my side 🙂 ?Imran/Malic
05/16/2022, 10:26 AME
and A
simon.vergauwen
05/16/2022, 10:38 AMR
contravariant/out in Effect<R, A>
, or define bind
as suspend fun <EE : E, A> Effect<EE, A>.bind(): A
in EffectScope<E>
.simon.vergauwen
05/16/2022, 10:39 AMImran/Malic
05/16/2022, 10:40 AM