def defs

bend-lint-rules@0.2.0.0 · language/unneeded_plus.bend:165

import bend-lint-rules@0.2.0.0/language/unneeded_plus.bend as UnneededPlus
import Base
import bend-lint-api@0.2.0.0/linter/lint.bend as Lint
import bend-lint-api@0.2.0.0/shared/lists.bend as Lists

165def defs(
166  nodes: List<&2, Lint.Node>,
167  +values: List<&2, String>,
168  out: List<&2, Lint.Finding>
169) -> List<&2, Lint.Finding>:
170  match nodes:
171    case Nil{}:
172      List.reverse(&2, Lint.Finding, out)
173    case Con{Lint.Node{Lint.Definition{+t, u}, n, s, k, f}, rest}:
174      +owner = {Lint.Node{Lint.Definition{t, u}, n, s, k, f}: Lint.Node}
175      defs(
176        rest,
177        values,
178        Lists.onto(
179          &2,
180          Lint.Finding,
181          Lint.visit(
182            ~Owner,
183            ~Lint.Finding,
184            ~visit,
185            Owner{values, t, Lint.visit(~Unit, ~U32, ~matched.visit, Unit{}, [owner])},
186            [owner]
187          ),
188          out
189        )
190      )
191    case Con{node, rest}:
192      defs(rest, values, out)

Uses (13)

Used by (1)