Skip to content

Fix librustdoc/scrape_examples.rs formatting #132739

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 8, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 22 additions & 11 deletions src/librustdoc/scrape_examples.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,16 @@ impl ScrapeExamplesOptions {
scrape_tests,
}),
(Some(_), false, _) | (None, true, _) => {
dcx.fatal("must use --scrape-examples-output-path and --scrape-examples-target-crate together");
dcx.fatal(
"must use --scrape-examples-output-path and --scrape-examples-target-crate \
together",
);
}
(None, false, true) => {
dcx.fatal("must use --scrape-examples-output-path and --scrape-examples-target-crate with --scrape-tests");
dcx.fatal(
"must use --scrape-examples-output-path and \
--scrape-examples-target-crate with --scrape-tests",
);
}
(None, false, false) => None,
}
Expand Down Expand Up @@ -163,34 +169,37 @@ where
};

// If this span comes from a macro expansion, then the source code may not actually show
// a use of the given item, so it would be a poor example. Hence, we skip all uses in macros.
// a use of the given item, so it would be a poor example. Hence, we skip all uses in
// macros.
if call_span.from_expansion() {
trace!("Rejecting expr from macro: {call_span:?}");
return;
}

// If the enclosing item has a span coming from a proc macro, then we also don't want to include
// the example.
// If the enclosing item has a span coming from a proc macro, then we also don't want to
// include the example.
let enclosing_item_span =
tcx.hir().span_with_body(tcx.hir().get_parent_item(ex.hir_id).into());
if enclosing_item_span.from_expansion() {
trace!("Rejecting expr ({call_span:?}) from macro item: {enclosing_item_span:?}");
return;
}

// If the enclosing item doesn't actually enclose the call, this means we probably have a weird
// macro issue even though the spans aren't tagged as being from an expansion.
// If the enclosing item doesn't actually enclose the call, this means we probably have a
// weird macro issue even though the spans aren't tagged as being from an expansion.
if !enclosing_item_span.contains(call_span) {
warn!(
"Attempted to scrape call at [{call_span:?}] whose enclosing item [{enclosing_item_span:?}] doesn't contain the span of the call."
"Attempted to scrape call at [{call_span:?}] whose enclosing item \
[{enclosing_item_span:?}] doesn't contain the span of the call."
);
return;
}

// Similarly for the call w/ the function ident.
if !call_span.contains(ident_span) {
warn!(
"Attempted to scrape call at [{call_span:?}] whose identifier [{ident_span:?}] was not contained in the span of the call."
"Attempted to scrape call at [{call_span:?}] whose identifier [{ident_span:?}] was \
not contained in the span of the call."
);
return;
}
Expand Down Expand Up @@ -224,7 +233,8 @@ where
Some(url) => url,
None => {
trace!(
"Rejecting expr ({call_span:?}) whose clean span ({clean_span:?}) cannot be turned into a link"
"Rejecting expr ({call_span:?}) whose clean span ({clean_span:?}) \
cannot be turned into a link"
);
return;
}
Expand Down Expand Up @@ -272,7 +282,8 @@ pub(crate) fn run(
let (cx, _) = Context::init(krate, renderopts, cache, tcx).map_err(|e| e.to_string())?;

// Collect CrateIds corresponding to provided target crates
// If two different versions of the crate in the dependency tree, then examples will be collected from both.
// If two different versions of the crate in the dependency tree, then examples will be
// collected from both.
let all_crates = tcx
.crates(())
.iter()
Expand Down
Loading