pipe(
Effect.promise(() => myFunc()),
Effect.catchAllDefect(error => {
if (error instanceof SomeExpectedError) {
return Effect.fail(new MyTaggedError({ cause: error }))
}
if (error instanceof SomeErrorToIgnore) {
return Effect.succeed(defaultValue)
}
return Effect.die(error)
}),
)
pipe(
Effect.promise(() => myFunc()),
Effect.catchAllDefect(error => {
if (error instanceof SomeExpectedError) {
return Effect.fail(new MyTaggedError({ cause: error }))
}
if (error instanceof SomeErrorToIgnore) {
return Effect.succeed(defaultValue)
}
return Effect.die(error)
}),
)