Skip to content

Commit 94470f4

Browse files
committed
Use as_deref in compiler (but only where it makes sense)
1 parent e702534 commit 94470f4

File tree

27 files changed

+45
-63
lines changed

27 files changed

+45
-63
lines changed

compiler/rustc_ast_passes/src/ast_validation.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1637,7 +1637,7 @@ fn deny_equality_constraints(
16371637
// Remove `Bar` from `Foo::Bar`.
16381638
assoc_path.segments.pop();
16391639
let len = assoc_path.segments.len() - 1;
1640-
let gen_args = args.as_ref().map(|p| (**p).clone());
1640+
let gen_args = args.as_deref().cloned();
16411641
// Build `<Bar = RhsTy>`.
16421642
let arg = AngleBracketedArg::Constraint(AssocConstraint {
16431643
id: rustc_ast::node_id::DUMMY_NODE_ID,

compiler/rustc_builtin_macros/src/asm.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,7 @@ fn expand_preparsed_asm(ecx: &mut ExtCtxt<'_>, args: AsmArgs) -> Option<ast::Inl
560560
let template_snippet = ecx.source_map().span_to_snippet(template_sp).ok();
561561
template_strs.push((
562562
template_str,
563-
template_snippet.as_ref().map(|s| Symbol::intern(s)),
563+
template_snippet.as_deref().map(Symbol::intern),
564564
template_sp,
565565
));
566566
let template_str = template_str.as_str();

compiler/rustc_builtin_macros/src/format_foreign/printf/tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ fn test_iter() {
100100
let s = "The %d'th word %% is: `%.*s` %!\n";
101101
let subs: Vec<_> = iter_subs(s, 0).map(|sub| sub.translate().ok()).collect();
102102
assert_eq!(
103-
subs.iter().map(|ms| ms.as_ref().map(|s| &s[..])).collect::<Vec<_>>(),
103+
subs.iter().map(Option::as_deref).collect::<Vec<_>>(),
104104
vec![Some("{}"), None, Some("{:.*}"), None]
105105
);
106106
}

compiler/rustc_builtin_macros/src/format_foreign/shell/tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ fn test_iter() {
3939
let s = "The $0'th word $$ is: `$WORD` $!\n";
4040
let subs: Vec<_> = iter_subs(s, 0).map(|sub| sub.translate().ok()).collect();
4141
assert_eq!(
42-
subs.iter().map(|ms| ms.as_ref().map(|s| &s[..])).collect::<Vec<_>>(),
42+
subs.iter().map(Option::as_deref).collect::<Vec<_>>(),
4343
vec![Some("{0}"), None, Some("{WORD}")]
4444
);
4545
}

compiler/rustc_codegen_cranelift/build_system/utils.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,5 +104,5 @@ pub(crate) fn copy_dir_recursively(from: &Path, to: &Path) {
104104
}
105105

106106
pub(crate) fn is_ci() -> bool {
107-
env::var("CI").as_ref().map(|val| &**val) == Ok("true")
107+
env::var("CI").as_deref() == Ok("true")
108108
}

compiler/rustc_codegen_cranelift/src/config.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::env;
22
use std::str::FromStr;
33

44
fn bool_env_var(key: &str) -> bool {
5-
env::var(key).as_ref().map(|val| &**val) == Ok("1")
5+
env::var(key).as_deref() == Ok("1")
66
}
77

88
/// The mode to use for compilation.

compiler/rustc_codegen_llvm/src/coverageinfo/mapgen.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ impl CoverageMapGenerator {
174174
counter_regions.sort_unstable_by_key(|(_counter, region)| *region);
175175
for (counter, region) in counter_regions {
176176
let CodeRegion { file_name, start_line, start_col, end_line, end_col } = *region;
177-
let same_file = current_file_name.as_ref().map_or(false, |p| *p == file_name);
177+
let same_file = current_file_name.map_or(false, |p| p == file_name);
178178
if !same_file {
179179
if current_file_name.is_some() {
180180
current_file_id += 1;

compiler/rustc_driver/src/lib.rs

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ fn run_compiler(
318318
compiler.input(),
319319
&*expanded_crate,
320320
*ppm,
321-
compiler.output_file().as_ref().map(|p| &**p),
321+
compiler.output_file().as_deref(),
322322
);
323323
Ok(())
324324
})?;
@@ -329,7 +329,7 @@ fn run_compiler(
329329
compiler.input(),
330330
&krate,
331331
*ppm,
332-
compiler.output_file().as_ref().map(|p| &**p),
332+
compiler.output_file().as_deref(),
333333
);
334334
}
335335
trace!("finished pretty-printing");
@@ -383,10 +383,7 @@ fn run_compiler(
383383
&crate_name,
384384
compiler.input(),
385385
None,
386-
DumpHandler::new(
387-
compiler.output_dir().as_ref().map(|p| &**p),
388-
&crate_name,
389-
),
386+
DumpHandler::new(compiler.output_dir().as_deref(), &crate_name),
390387
)
391388
});
392389
}

compiler/rustc_errors/src/emitter.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ pub trait Emitter: Translate {
248248
fluent_args: &FluentArgs<'_>,
249249
) -> (MultiSpan, &'a [CodeSuggestion]) {
250250
let mut primary_span = diag.span.clone();
251-
let suggestions = diag.suggestions.as_ref().map_or(&[][..], |suggestions| &suggestions[..]);
251+
let suggestions = diag.suggestions.as_deref().unwrap_or(&[]);
252252
if let Some((sugg, rest)) = suggestions.split_first() {
253253
let msg = self.translate_message(&sugg.msg, fluent_args);
254254
if rest.is_empty() &&

compiler/rustc_hir_analysis/src/collect.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2179,7 +2179,7 @@ fn check_link_ordinal(tcx: TyCtxt<'_>, attr: &ast::Attribute) -> Option<u16> {
21792179
.emit();
21802180
}
21812181
let meta_item_list = attr.meta_item_list();
2182-
let meta_item_list: Option<&[ast::NestedMetaItem]> = meta_item_list.as_ref().map(Vec::as_ref);
2182+
let meta_item_list = meta_item_list.as_deref();
21832183
let sole_meta_list = match meta_item_list {
21842184
Some([item]) => item.literal(),
21852185
Some(_) => {

0 commit comments

Comments
 (0)