def defs
bend-lint-rules@0.2.0.0 · performance/append_in_loop.bend:237
import bend-lint-rules@0.2.0.0/performance/append_in_loop.bend as AppendInLoop
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
237def defs(
238 nodes: List<&2, Lint.Node>,
239 +text: String,
240 out: List<&2, Lint.Finding>
241) -> List<&2, Lint.Finding>:
242 match nodes:
243 case Nil{}:
244 List.reverse(&2, Lint.Finding, out)
245 case Con{Lint.Node{Lint.Definition{t, u}, n, s, +k, f}, rest}:
246 defs(
247 rest,
248 text,
249 Lists.onto(
250 &2,
251 Lint.Finding,
252 Lint.visit(
253 ~Loop,
254 ~Lint.Finding,
255 ~visit,
256 Loop{k, text},
257 [Lint.Node{Lint.Definition{t, u}, n, s, k, f}]
258 ),
259 out
260 )
261 )
262 case Con{node, rest}:
263 defs(rest, text, out)