1
Fork 0

Stabilize str::escape_* methods

FCP: https://github.com/rust-lang/rust/issues/27791#issuecomment-376864727
This commit is contained in:
Simon Sapin 2019-02-01 13:34:07 +01:00
parent 7a077804a3
commit 55216f82a6
6 changed files with 7 additions and 20 deletions

View file

@ -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> {}
)+}
}

View file

@ -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)]

View file

@ -277,7 +277,6 @@
#![deny(rust_2018_idioms)]
#![feature(nll)]
#![feature(str_escape)]
use LabelText::*;

View file

@ -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)]

View file

@ -10,7 +10,6 @@
#![feature(proc_macro_span)]
#![feature(decl_macro)]
#![feature(nll)]
#![feature(str_escape)]
#![feature(rustc_diagnostic_macros)]
#![recursion_limit="256"]

View file

@ -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};