Rollup merge of #132739 - GuillaumeGomez:cleanup-scrape-code, r=notriddle

Fix `librustdoc/scrape_examples.rs` formatting

Still working on the intra-doc link feature. This time I encountered this file and it bothered me a bit so fixing formatting. :3

r? ````@notriddle````
This commit is contained in:
Jubilee 2024-11-07 18:48:25 -08:00 committed by GitHub
commit a1c4d9e42f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -42,10 +42,16 @@ pub(crate) fn new(matches: &getopts::Matches, dcx: DiagCtxtHandle<'_>) -> Option
scrape_tests, scrape_tests,
}), }),
(Some(_), false, _) | (None, true, _) => { (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) => { (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, (None, false, false) => None,
} }
@ -163,14 +169,15 @@ fn visit_expr(&mut self, ex: &'tcx hir::Expr<'tcx>) {
}; };
// If this span comes from a macro expansion, then the source code may not actually show // 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() { if call_span.from_expansion() {
trace!("Rejecting expr from macro: {call_span:?}"); trace!("Rejecting expr from macro: {call_span:?}");
return; return;
} }
// If the enclosing item has a span coming from a proc macro, then we also don't want to include // If the enclosing item has a span coming from a proc macro, then we also don't want to
// the example. // include the example.
let enclosing_item_span = let enclosing_item_span =
tcx.hir().span_with_body(tcx.hir().get_parent_item(ex.hir_id).into()); tcx.hir().span_with_body(tcx.hir().get_parent_item(ex.hir_id).into());
if enclosing_item_span.from_expansion() { if enclosing_item_span.from_expansion() {
@ -178,11 +185,12 @@ fn visit_expr(&mut self, ex: &'tcx hir::Expr<'tcx>) {
return; return;
} }
// If the enclosing item doesn't actually enclose the call, this means we probably have a weird // If the enclosing item doesn't actually enclose the call, this means we probably have a
// macro issue even though the spans aren't tagged as being from an expansion. // weird macro issue even though the spans aren't tagged as being from an expansion.
if !enclosing_item_span.contains(call_span) { if !enclosing_item_span.contains(call_span) {
warn!( 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; return;
} }
@ -190,7 +198,8 @@ fn visit_expr(&mut self, ex: &'tcx hir::Expr<'tcx>) {
// Similarly for the call w/ the function ident. // Similarly for the call w/ the function ident.
if !call_span.contains(ident_span) { if !call_span.contains(ident_span) {
warn!( 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; return;
} }
@ -224,7 +233,8 @@ fn visit_expr(&mut self, ex: &'tcx hir::Expr<'tcx>) {
Some(url) => url, Some(url) => url,
None => { None => {
trace!( 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; return;
} }
@ -272,7 +282,8 @@ pub(crate) fn run(
let (cx, _) = Context::init(krate, renderopts, cache, tcx).map_err(|e| e.to_string())?; let (cx, _) = Context::init(krate, renderopts, cache, tcx).map_err(|e| e.to_string())?;
// Collect CrateIds corresponding to provided target crates // 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 let all_crates = tcx
.crates(()) .crates(())
.iter() .iter()