summary refs log tree commit diff
path: root/library/std/src/lib.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2022-05-31 04:28:29 +0000
committerbors <bors@rust-lang.org>2022-05-31 04:28:29 +0000
commit989b806f61cf12840ddcd8b2bf16d6bef055bd01 (patch)
tree27f4e3fa284a927575046a9ef6e6b268977e654a /library/std/src/lib.rs
parent47365c0d656e2e55d1b6b9dad92842540e3ed1af (diff)
parentcb60e70dc4a066247b0081782db56807386eaf58 (diff)
downloadrust-989b806f61cf12840ddcd8b2bf16d6bef055bd01.tar.gz
rust-989b806f61cf12840ddcd8b2bf16d6bef055bd01.zip
Auto merge of #96881 - est31:join_osstr, r=dtolnay
Implement [OsStr]::join

Implements join for `OsStr` and `OsString` slices:

```Rust
    let strings = [OsStr::new("hello"), OsStr::new("dear"), OsStr::new("world")];
    assert_eq!("hello dear world", strings.join(OsStr::new(" ")));
````

This saves one from converting to strings and back, or from implementing it manually.

This PR has been re-filed after #96744 was first accidentally merged and then reverted.

The change is instantly stable and thus:

r? rust-lang/libs-api `@rustbot` label +T-libs-api -T-libs

cc `@thomcc` `@m-ou-se` `@faptc`
Diffstat (limited to 'library/std/src/lib.rs')
-rw-r--r--library/std/src/lib.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/library/std/src/lib.rs b/library/std/src/lib.rs
index 6dc3fd98584..519f050d2fc 100644
--- a/library/std/src/lib.rs
+++ b/library/std/src/lib.rs
@@ -241,6 +241,7 @@
 #![feature(intra_doc_pointers)]
 #![feature(lang_items)]
 #![feature(let_chains)]
+#![feature(let_else)]
 #![feature(linkage)]
 #![feature(min_specialization)]
 #![feature(must_not_suspend)]
@@ -301,6 +302,7 @@
 #![feature(toowned_clone_into)]
 #![feature(try_reserve_kind)]
 #![feature(vec_into_raw_parts)]
+#![feature(slice_concat_trait)]
 //
 // Library features (unwind):
 #![feature(panic_unwind)]