class RedirectError {
_tag = 'Redirect';
constructor(public url: string) {}
}
class BadRequestError {
_tag = 'BadRequest';
constructor(public message: string) {}
}
type ResponseError = RedirectError | BadRequestError;
type Fn = () => Effect.Effect<never, ResponseError, number>;
function test(fn: Fn) {
const effect = fn();
effect.pipe(
Effect.catchTag("Redirect", err => Effect.succeeed(-1)),
Effect.catchTag("BadRequest", err => Effect.succeed(-2))
);
}
class RedirectError {
_tag = 'Redirect';
constructor(public url: string) {}
}
class BadRequestError {
_tag = 'BadRequest';
constructor(public message: string) {}
}
type ResponseError = RedirectError | BadRequestError;
type Fn = () => Effect.Effect<never, ResponseError, number>;
function test(fn: Fn) {
const effect = fn();
effect.pipe(
Effect.catchTag("Redirect", err => Effect.succeeed(-1)),
Effect.catchTag("BadRequest", err => Effect.succeed(-2))
);
}