MCPcopy Create free account
hub / github.com/Effect-TS/effect / reasonImpl

Function reasonImpl

packages/effect/src/Filter.ts:522–531  ·  view source on GitHub ↗
(tag: Tag, reasonTag: ReasonTag)

Source from the content-addressed store, hash-verified

520
521const reasonImpl =
522 <const Tag extends string, const ReasonTag extends string>(tag: Tag, reasonTag: ReasonTag) =>
523 <Input>(input: Input): Result.Result<ExtractTag<Input, Tag>, ExcludeTag<Input, Tag>> => {
524 if (
525 Predicate.isTagged(input, tag) && Predicate.hasProperty(input, "reason") &&
526 Predicate.isTagged(input.reason, reasonTag)
527 ) {
528 return Result.succeed(input.reason as any)
529 }
530 return Result.fail(input as any)
531 }
532
533/**
534 * Creates a filter that only passes values equal to the specified value using structural equality.

Callers 1

Filter.tsFile · 0.85

Calls 2

succeedMethod · 0.45
failMethod · 0.45

Tested by

no test coverage detected