I would like to propose a feature request for the rustdoc. For the documentation generated for a type, it seems great to me if the trait implmentations can be grouped by the name of source crate (even source module) in the left navigation panel. Usually, a type won't have too many methods but it can have numerous trait implmentations (especially for numberic related types such as BigUint and rug::Integer).
People usually don't browse the trait implementations by the alphabetic order, they do directly by searching. But sometimes if I don't know which trait I'm looking for, but just want to know what functionalities the type support, it will be great if I can find the implementations by the crate / module name. For example, the implementation of all the arithmetic traits (Add, Sub, etc) can be grouped by the core::ops module name.
I would like to create an issue for this if there's not an approach that I just haven't known yet.
In source code I usually try to order trait implementations in order of decreasing rarity: boring stuff like Default or Clone comes at the bottom, bespoke local traits near the top. Maybe it would be feasible to do use similar heuristics here? At least could do local traits, then foreign non-std traits, then std traits?
That's a great suggestion! But I'm not sure if it's the same case for all users, because for me, std/core traits are often very useful and important as well. How about we put the local traits at the top (with name crate::xxx, and put other trait groups under them sorted alphabetically?
Second thought: I'm not sure how this heuristic will get along with the std library docs itself, displaying crate::xxx for std traits seems weird.