From 70fa616a23b59e4b7b537e55f5b95ec3e963b2fd Mon Sep 17 00:00:00 2001 From: Jean-Marie Comets Date: Sun, 31 Mar 2019 10:54:00 +0200 Subject: [PATCH] Stabilize refcell_replace_swap feature, closes #43570 --- src/libcore/cell.rs | 3 +-- src/libcore/tests/lib.rs | 1 - src/librustc/lib.rs | 1 - src/librustc_typeck/lib.rs | 1 - src/libsyntax/feature_gate.rs | 2 ++ 5 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index 753f10e6a0ad..99169a6a259c 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -711,7 +711,6 @@ impl RefCell { /// # Examples /// /// ``` - /// #![feature(refcell_replace_swap)] /// use std::cell::RefCell; /// let cell = RefCell::new(5); /// let old_value = cell.replace_with(|&mut old| old + 1); @@ -719,7 +718,7 @@ impl RefCell { /// assert_eq!(cell, RefCell::new(6)); /// ``` #[inline] - #[unstable(feature = "refcell_replace_swap", issue="43570")] + #[stable(feature = "refcell_replace_swap", since="1.35.0")] pub fn replace_with T>(&self, f: F) -> T { let mut_borrow = &mut *self.borrow_mut(); let replacement = f(mut_borrow); diff --git a/src/libcore/tests/lib.rs b/src/libcore/tests/lib.rs index 2ed25a341021..5e0dbb7ab2f1 100644 --- a/src/libcore/tests/lib.rs +++ b/src/libcore/tests/lib.rs @@ -16,7 +16,6 @@ #![feature(pattern)] #![feature(range_is_empty)] #![feature(raw)] -#![feature(refcell_replace_swap)] #![feature(slice_patterns)] #![feature(sort_internals)] #![feature(specialization)] diff --git a/src/librustc/lib.rs b/src/librustc/lib.rs index e905c3688518..b87343b43c9f 100644 --- a/src/librustc/lib.rs +++ b/src/librustc/lib.rs @@ -45,7 +45,6 @@ #![feature(proc_macro_internals)] #![feature(optin_builtin_traits)] #![feature(range_is_empty)] -#![feature(refcell_replace_swap)] #![feature(rustc_diagnostic_macros)] #![feature(rustc_attrs)] #![feature(slice_patterns)] diff --git a/src/librustc_typeck/lib.rs b/src/librustc_typeck/lib.rs index cc90044573ce..1fa16352b867 100644 --- a/src/librustc_typeck/lib.rs +++ b/src/librustc_typeck/lib.rs @@ -64,7 +64,6 @@ This API is completely unstable and subject to change. #![feature(crate_visibility_modifier)] #![feature(exhaustive_patterns)] #![feature(nll)] -#![feature(refcell_replace_swap)] #![feature(rustc_diagnostic_macros)] #![feature(slice_patterns)] #![feature(never_type)] diff --git a/src/libsyntax/feature_gate.rs b/src/libsyntax/feature_gate.rs index dcb55fb572f3..d53cfddaf8de 100644 --- a/src/libsyntax/feature_gate.rs +++ b/src/libsyntax/feature_gate.rs @@ -703,6 +703,8 @@ declare_features! ( (accepted, extern_crate_self, "1.34.0", Some(56409), None), // support for arbitrary delimited token streams in non-macro attributes (accepted, unrestricted_attribute_tokens, "1.34.0", Some(55208), None), + // add replace and swap functions to RefCell + (accepted, refcell_replace_swap, "1.35.0", Some(43570), None), ); // If you change this, please modify `src/doc/unstable-book` as well. You must