Within the documentation for a crate, all hyperlinks to reexported items don't
go across crates, but rather to the items in the crate itself. This will allow
references to Option in the standard library to link to the standard library's
Option, instead of libcore's.
This does mean that other crate's links for Option will still link to libcore's
Option.
print_all: bool) -> fmt::Result {
path(w, p, print_all,
|cache, loc| {
- if ast_util::is_local(did) {
+ if ast_util::is_local(did) || cache.paths.contains_key(&did) {
Some(("../".repeat(loc.len())).to_strbuf())
} else {
match *cache.extern_locations.get(&did.krate) {
// not a public item.
let id = item.def_id.node;
if !self.paths.contains_key(&item.def_id) ||
+ !ast_util::is_local(item.def_id) ||
self.public_items.contains(&id) {
self.paths.insert(item.def_id,
(self.stack.clone(), shortty(&item)));