def Seen.then
bend-lint-rules@0.2.0.0 · language/reused_binder.bend:101
import bend-lint-rules@0.2.0.0/language/reused_binder.bend as ReusedBinder
import Base
import bend-lint-api@0.2.0.0/linter/lint.bend as Lint
101
102def Seen.then(apart: Bool, seen: Seen, next: Seen) -> Seen:
103 match apart seen next:
104 case True{} Seen{f, s} Seen{g, t}:
105 Seen{Maybe.or(&2, Lint.Span, f, g), Maybe.or(&2, Lint.Span, s, t)}
106 case False{} Seen{Some{f}, s} Seen{g, t}:
107 Seen{Some{f}, Maybe.or(&2, Lint.Span, s, g)}
108 case False{} Seen{None{}, s} Seen{g, t}:
109 Seen{g, Maybe.or(&2, Lint.Span, s, t)}