diff options
| author | bors <bors@rust-lang.org> | 2024-08-11 05:54:39 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-08-11 05:54:39 +0000 |
| commit | c9bd03cb724e13cca96ad320733046cbdb16fbbe (patch) | |
| tree | cf76b0affb89c687c33b929c4905f25d8adc1b5f /compiler/rustc_errors/src/lib.rs | |
| parent | 730d5d4095a264ef5f7c0a0781eea68c15431d45 (diff) | |
| parent | 2c88eb9805c172f436ac3694b7059db5f4748804 (diff) | |
| download | rust-c9bd03cb724e13cca96ad320733046cbdb16fbbe.tar.gz rust-c9bd03cb724e13cca96ad320733046cbdb16fbbe.zip | |
Auto merge of #128959 - matthiaskrgr:rollup-6jdqi3l, r=matthiaskrgr
Rollup of 6 pull requests Successful merges: - #120314 (core: optimise Debug impl for ascii::Char) - #128536 (Preliminary cleanup of `WitnessPat` hoisting/printing) - #128592 (Promote aarch64-apple-darwin to Tier 1) - #128762 (Use more slice patterns inside the compiler) - #128875 (rm `import.used`) - #128882 (make LocalWaker::will_wake consistent with Waker::will_wake) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_errors/src/lib.rs')
| -rw-r--r-- | compiler/rustc_errors/src/lib.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/compiler/rustc_errors/src/lib.rs b/compiler/rustc_errors/src/lib.rs index ceebcd46a6f..aefbf05a1fc 100644 --- a/compiler/rustc_errors/src/lib.rs +++ b/compiler/rustc_errors/src/lib.rs @@ -2024,11 +2024,11 @@ pub fn a_or_an(s: &str) -> &'static str { /// /// Take a list ["a", "b", "c"] and output a display friendly version "a, b and c" pub fn display_list_with_comma_and<T: std::fmt::Display>(v: &[T]) -> String { - match v.len() { - 0 => "".to_string(), - 1 => v[0].to_string(), - 2 => format!("{} and {}", v[0], v[1]), - _ => format!("{}, {}", v[0], display_list_with_comma_and(&v[1..])), + match v { + [] => "".to_string(), + [a] => a.to_string(), + [a, b] => format!("{a} and {b}"), + [a, v @ ..] => format!("{a}, {}", display_list_with_comma_and(v)), } } |
