I'm not overly familiar with Rustdoc's internals, but I would imagine that traversing type information will become much more straightforward when HIR/MIR become a reality. Is that accurate? If so, maybe that's a something for which it's worth delaying a structural overhaul.
I have no idea how rustdoc works, frankly. Parsers are one of those things that I am irrationally scared to hack on. At some point, I'll get fed up and overcome that, but it hasn't quite gotten there yet...