diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2020-07-07 16:47:37 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2020-07-07 16:47:37 +0100 |
commit | 695f1a9af816e159ebe3ac7edb63ad81632192c2 (patch) | |
tree | 31bb591b935992d7f30e0fabe8633018ddbf6d02 /crates/ra_hir_ty/src/utils.rs | |
parent | 7407636568c791b39cd12f9176f667dac2deef1b (diff) | |
parent | 5d2225f4bc82c4cd551db5a53500e7a076bf5586 (diff) |
Merge #5252
5252: Fix symbol search in salsa r=matklad a=matklad
Previous solution for binning paths into disjoint directories was
simple and fast -- just a single binary search.
Unfortunatelly, it wasn't coorrect: if the ditr are
/d
/d/a
/d/c
then partitioning the file /d/b/lib.rs won't pick /d as a correct
directory.
The correct solution here is a trie, but it requires exposing path
components.
So, we use a poor man's substitution -- a *vector* of sorted paths,
such that each bucket is prefix-free
closes #5246
Co-authored-by: Aleksey Kladov <[email protected]>
Diffstat (limited to 'crates/ra_hir_ty/src/utils.rs')
0 files changed, 0 insertions, 0 deletions