@@ -2041,7 +2041,6 @@ impl<T, A: Allocator> VecDeque<T, A> {
20412041 /// # Examples
20422042 ///
20432043 /// ```
2044- /// #![feature(vec_deque_pop_if)]
20452044 /// use std::collections::VecDeque;
20462045 ///
20472046 /// let mut deque: VecDeque<i32> = vec![0, 1, 2, 3, 4].into();
@@ -2051,7 +2050,7 @@ impl<T, A: Allocator> VecDeque<T, A> {
20512050 /// assert_eq!(deque, [1, 2, 3, 4]);
20522051 /// assert_eq!(deque.pop_front_if(pred), None);
20532052 /// ```
2054- #[ unstable ( feature = "vec_deque_pop_if" , issue = "135889 " ) ]
2053+ #[ stable ( feature = "vec_deque_pop_if" , since = "CURRENT_RUSTC_VERSION " ) ]
20552054 pub fn pop_front_if ( & mut self , predicate : impl FnOnce ( & mut T ) -> bool ) -> Option < T > {
20562055 let first = self . front_mut ( ) ?;
20572056 if predicate ( first) { self . pop_front ( ) } else { None }
@@ -2064,7 +2063,6 @@ impl<T, A: Allocator> VecDeque<T, A> {
20642063 /// # Examples
20652064 ///
20662065 /// ```
2067- /// #![feature(vec_deque_pop_if)]
20682066 /// use std::collections::VecDeque;
20692067 ///
20702068 /// let mut deque: VecDeque<i32> = vec![0, 1, 2, 3, 4].into();
@@ -2074,10 +2072,10 @@ impl<T, A: Allocator> VecDeque<T, A> {
20742072 /// assert_eq!(deque, [0, 1, 2, 3]);
20752073 /// assert_eq!(deque.pop_back_if(pred), None);
20762074 /// ```
2077- #[ unstable ( feature = "vec_deque_pop_if" , issue = "135889 " ) ]
2075+ #[ stable ( feature = "vec_deque_pop_if" , since = "CURRENT_RUSTC_VERSION " ) ]
20782076 pub fn pop_back_if ( & mut self , predicate : impl FnOnce ( & mut T ) -> bool ) -> Option < T > {
2079- let first = self . back_mut ( ) ?;
2080- if predicate ( first ) { self . pop_back ( ) } else { None }
2077+ let last = self . back_mut ( ) ?;
2078+ if predicate ( last ) { self . pop_back ( ) } else { None }
20812079 }
20822080
20832081 /// Prepends an element to the deque.
0 commit comments