From 55216f82a69092fdb22fb779d3f64d3d756c7ed8 Mon Sep 17 00:00:00 2001 From: Simon Sapin Date: Fri, 1 Feb 2019 13:34:07 +0100 Subject: [PATCH] Stabilize str::escape_* methods FCP: https://github.com/rust-lang/rust/issues/27791#issuecomment-376864727 --- src/liballoc/str.rs | 20 +++++++------------ src/liballoc/tests/lib.rs | 1 - src/libgraphviz/lib.rs | 1 - src/libsyntax/lib.rs | 1 - src/libsyntax_ext/lib.rs | 1 - .../sync-send-iterators-in-libcore.rs | 3 --- 6 files changed, 7 insertions(+), 20 deletions(-) diff --git a/src/liballoc/str.rs b/src/liballoc/str.rs index 1705c80d5f50c..8daa088a21a26 100644 --- a/src/liballoc/str.rs +++ b/src/liballoc/str.rs @@ -452,9 +452,7 @@ impl str { /// escaped. /// /// [`char::escape_debug`]: primitive.char.html#method.escape_debug - #[unstable(feature = "str_escape", - reason = "return type may change to be an iterator", - issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] pub fn escape_debug(&self) -> EscapeDebug { let mut chars = self.chars(); EscapeDebug { @@ -469,9 +467,7 @@ impl str { /// Escapes each char in `s` with [`char::escape_default`]. /// /// [`char::escape_default`]: primitive.char.html#method.escape_default - #[unstable(feature = "str_escape", - reason = "return type may change to be an iterator", - issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] pub fn escape_default(&self) -> EscapeDefault { EscapeDefault { inner: self.chars().flat_map(CharEscapeDefault) } } @@ -479,9 +475,7 @@ impl str { /// Escapes each char in `s` with [`char::escape_unicode`]. /// /// [`char::escape_unicode`]: primitive.char.html#method.escape_unicode - #[unstable(feature = "str_escape", - reason = "return type may change to be an iterator", - issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] pub fn escape_unicode(&self) -> EscapeUnicode { EscapeUnicode { inner: self.chars().flat_map(CharEscapeUnicode) } } @@ -639,20 +633,20 @@ macro_rules! escape_types { inner: $Inner: ty, } )+) => {$( - #[unstable(feature = "str_escape", issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] #[derive(Clone, Debug)] pub struct $Name<'a> { inner: $Inner, } - #[unstable(feature = "str_escape", issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] impl<'a> fmt::Display for $Name<'a> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.clone().try_for_each(|c| f.write_char(c)) } } - #[unstable(feature = "str_escape", issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] impl<'a> Iterator for $Name<'a> { type Item = char; @@ -677,7 +671,7 @@ macro_rules! escape_types { } } - #[unstable(feature = "str_escape", issue = "27791")] + #[stable(feature = "str_escape", since = "1.34.0")] impl<'a> FusedIterator for $Name<'a> {} )+} } diff --git a/src/liballoc/tests/lib.rs b/src/liballoc/tests/lib.rs index a76fd87a1a92d..2b63ac5c7d2f9 100644 --- a/src/liballoc/tests/lib.rs +++ b/src/liballoc/tests/lib.rs @@ -5,7 +5,6 @@ #![feature(pattern)] #![feature(repeat_generic_slice)] #![feature(slice_sort_by_cached_key)] -#![feature(str_escape)] #![feature(try_reserve)] #![feature(unboxed_closures)] #![feature(vecdeque_rotate)] diff --git a/src/libgraphviz/lib.rs b/src/libgraphviz/lib.rs index 6ee151a6484d9..e54ebae42cf4c 100644 --- a/src/libgraphviz/lib.rs +++ b/src/libgraphviz/lib.rs @@ -277,7 +277,6 @@ #![deny(rust_2018_idioms)] #![feature(nll)] -#![feature(str_escape)] use LabelText::*; diff --git a/src/libsyntax/lib.rs b/src/libsyntax/lib.rs index c844f9e2a91ee..a56cdf623bf43 100644 --- a/src/libsyntax/lib.rs +++ b/src/libsyntax/lib.rs @@ -15,7 +15,6 @@ #![feature(rustc_attrs)] #![feature(rustc_diagnostic_macros)] #![feature(slice_sort_by_cached_key)] -#![feature(str_escape)] #![feature(step_trait)] #![feature(try_trait)] #![feature(unicode_internals)] diff --git a/src/libsyntax_ext/lib.rs b/src/libsyntax_ext/lib.rs index 7d7fd03085912..0232c19e896ea 100644 --- a/src/libsyntax_ext/lib.rs +++ b/src/libsyntax_ext/lib.rs @@ -10,7 +10,6 @@ #![feature(proc_macro_span)] #![feature(decl_macro)] #![feature(nll)] -#![feature(str_escape)] #![feature(rustc_diagnostic_macros)] #![recursion_limit="256"] diff --git a/src/test/run-pass/threads-sendsync/sync-send-iterators-in-libcore.rs b/src/test/run-pass/threads-sendsync/sync-send-iterators-in-libcore.rs index 903bbf5163443..44beb9dc1e534 100644 --- a/src/test/run-pass/threads-sendsync/sync-send-iterators-in-libcore.rs +++ b/src/test/run-pass/threads-sendsync/sync-send-iterators-in-libcore.rs @@ -2,9 +2,6 @@ // pretty-expanded FIXME #23616 #![allow(warnings)] -#![feature(iter_empty)] -#![feature(iter_once)] -#![feature(str_escape)] use std::iter::{empty, once, repeat};