def search.go

bolt@1.27.0.0 · src/rules/correctness/pick.bend:362

import bolt@1.27.0.0/src/rules/correctness/pick.bend as Pick
import Base
import bolt@1.27.0.0/src/finding.bend as F
import bolt@1.27.0.0/src/rules/calls.bend as Calls
import bolt@1.27.0.0/src/lazy/lazy.bend as Lazy

362def search.go(ds: List<&2, Calls.Def>, +path: String, acc: List<&2, List<&2, F.Finding>>) -> List<&2, F.Finding>:
363  match ds:
364    case Nil{}:
365      List.concat(&2, F.Finding, List.reverse(&2, List<&2, F.Finding>, acc))
366    case Con{Calls.Def{+name, +sig, body}, rest}:
367      search.go(rest, path,
368        Lazy.stop(List<&2, F.Finding>, Calls.exempt(path, sig), [], _u => search.walk(body, name, path)) <> acc)

Uses (9)

Used by (1)