Implement expand_glob_reexport assist #19158
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #13511 .
The code ends up pretty messy. To handle this more cleanly, I'd want some equivalent of
hir_def::visibility::Visibility::is_visible_from
that takes asyntax::ast::Visibility
as the origin, or at least some type that can be easily derived fromsyntax::ast::Visibility
.The general problem (from my naive viewpoint as someone unfamiliar with the codebase) is that as far as I can tell the HIR data types you can get from
ctx.sema
already lost all knowledge aboutuse xxx
items; and those data types are the ones that can do fancy visibility computation. (hir_def::item_tree::Use
would be useful, but I haven't found a way to get one from asyntax::ast::Use
)Anyway, 99% of re-exports are
pub
orpub(crate)
anyway, so this should already be a large improvement.