A cargo plugin for showing a tree-like overview of a crate’s modules.
With time, as your Rust projects grow bigger and bigger, it gets more and more important to properly structure your code. Fortunately Rust provides us with a quite sophisticated module system, allowing us to neatly split up our crates into arbitrarily small sub-modules of types and functions. While this helps to avoid monolithic and unstructured chunks of code, it can also make it hard at times to still mentally stay on top of the over-all high-level structure of the project at hand.
This is where
cargo-modules comes into play:
cargo install cargo-modules
If you want to also list of potentially orphaned modules,
then add a
cargo modules --orphans
src/../foo/mod.rs that is not linked by its
mod foo; is considered a (potential) orphaned module.
To keep false positives to a minimum
cargo-modules excludes all build scripts
as well as
main.rs from the selection of potential orphans.
If you, for some reason, need to remove the coloring, use:
cargo modules --plain
If you need any further help:
cargo modules --help
- Vincent Esche – Initial work – Regexident
See also the list of contributors who participated in this project.