Router.best: def of bend-kit-router@0.2.0.0 Import: import bend-kit-router@0.2.0.0/router.bend as Router Lines 316-322 of bend-kit-router@0.2.0.0/router.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-router@0.2.0.0/router.bend&start_line=316&end_line=322 import Base # ponytail: lookup scans prepared paths in O(routes × segments); use a trie if measured dispatch cost warrants it. def best(~A: Data, paths: List<&2, Path>, +segments: List<&2, String>, acc: Maybe<&2, Path>) -> Maybe<&2, Path>: match paths: case Nil{}: acc case Path{+ss, handlers, groups, allowed} <> t: best(~A, t, segments, best.step(~A, matches(ss, segments), Path{ss, handlers, groups, allowed}, acc)) Uses (6): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=bend-kit-router@0.2.0.0/router.bend&name=Path https://jend.leeeet.dev/definition.txt?path=bend-kit-router@0.2.0.0/router.bend&name=best.step https://jend.leeeet.dev/definition.txt?path=bend-kit-router@0.2.0.0/router.bend&name=matches