Regardless of the language when I open a module's source for the first time I look for two things:
- Public API
- Entry points of the API (which functions/methods are called first by the
In C I look for the header file, in Haskell I look for the export list. In Rust there isn't an easy way to do this without editor/IDE support, and so far I'm unable to configure my editor (neovim) to help with this so I'd like to ask how people do this.
I think what would help is a tree view of items in the current module that can filter non-pub stuff. Ideally it should work without manual pre-processing (e.g. generating tags).
Does something like this exist? Any pointeres would be appreciated. I'm mainly a neovim user, but I'd be happy with a VS Code solution as well. One thing to note is that I'm planning using this on rustc source, so I think RLS/rust-analyzer based solutions may not work.