Commit 335de05
authored
fix: honor function visibility in LSP completion (#5809)
# Description
## Problem
Resolves #5808
## Summary
Reuses the same logic done when resolving a `use` or `Path` in the
compiler.
## Additional Context
It's debatable whether this functionality is desired, because sometimes
you add a function, want to use it and autocompletion doesn't suggest
it, and it takes a while for you to realize that you forgot to add
`pub`. However, a lot of the suggested functions come from the std or
external crates, and it doesn't make sense to reveal these private
functions. This is also how Rust Analyzer works too.
## Documentation
Check one:
- [x] No documentation needed.
- [ ] Documentation included in this PR.
- [ ] **[For Experimental Features]** Documentation to be submitted in a
separate PR.
# PR Checklist
- [x] I have tested the changes locally.
- [x] I have formatted the changes with [Prettier](https://prettier.io/)
and/or `cargo fmt` on default settings.1 parent 1c84038 commit 335de05
3 files changed
Lines changed: 55 additions & 32 deletions
File tree
- compiler/noirc_frontend/src/hir/resolution
- tooling/lsp/src/requests
- completion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
374 | 374 | | |
375 | 375 | | |
376 | 376 | | |
377 | | - | |
378 | | - | |
379 | | - | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
380 | 380 | | |
381 | 381 | | |
382 | 382 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
29 | 32 | | |
30 | 33 | | |
31 | 34 | | |
| |||
1238 | 1241 | | |
1239 | 1242 | | |
1240 | 1243 | | |
1241 | | - | |
1242 | | - | |
1243 | | - | |
1244 | | - | |
1245 | | - | |
1246 | | - | |
1247 | | - | |
1248 | | - | |
1249 | | - | |
1250 | | - | |
| 1244 | + | |
| 1245 | + | |
| 1246 | + | |
| 1247 | + | |
| 1248 | + | |
| 1249 | + | |
| 1250 | + | |
| 1251 | + | |
| 1252 | + | |
| 1253 | + | |
| 1254 | + | |
| 1255 | + | |
1251 | 1256 | | |
1252 | 1257 | | |
1253 | 1258 | | |
1254 | | - | |
1255 | | - | |
1256 | | - | |
1257 | | - | |
1258 | | - | |
1259 | | - | |
1260 | | - | |
1261 | | - | |
1262 | | - | |
1263 | | - | |
| 1259 | + | |
| 1260 | + | |
| 1261 | + | |
| 1262 | + | |
| 1263 | + | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
| 1268 | + | |
| 1269 | + | |
| 1270 | + | |
1264 | 1271 | | |
1265 | 1272 | | |
1266 | 1273 | | |
| |||
1384 | 1391 | | |
1385 | 1392 | | |
1386 | 1393 | | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
1387 | 1409 | | |
1388 | 1410 | | |
1389 | 1411 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
182 | 182 | | |
183 | 183 | | |
184 | 184 | | |
185 | | - | |
| 185 | + | |
| 186 | + | |
186 | 187 | | |
187 | 188 | | |
188 | 189 | | |
| |||
1703 | 1704 | | |
1704 | 1705 | | |
1705 | 1706 | | |
1706 | | - | |
| 1707 | + | |
1707 | 1708 | | |
1708 | 1709 | | |
1709 | 1710 | | |
| |||
1725 | 1726 | | |
1726 | 1727 | | |
1727 | 1728 | | |
1728 | | - | |
| 1729 | + | |
1729 | 1730 | | |
1730 | 1731 | | |
1731 | 1732 | | |
| |||
0 commit comments