@@ -1831,7 +1831,6 @@ impl<T, A: Allocator> VecDeque<T, A> {
18311831 /// # Examples
18321832 ///
18331833 /// ```
1834- /// #![feature(vec_deque_pop_if)]
18351834 /// use std::collections::VecDeque;
18361835 ///
18371836 /// let mut deque: VecDeque<i32> = vec![0, 1, 2, 3, 4].into();
@@ -1841,7 +1840,7 @@ impl<T, A: Allocator> VecDeque<T, A> {
18411840 /// assert_eq!(deque, [1, 2, 3, 4]);
18421841 /// assert_eq!(deque.pop_front_if(pred), None);
18431842 /// ```
1844- #[ unstable ( feature = "vec_deque_pop_if" , issue = "135889 " ) ]
1843+ #[ stable ( feature = "vec_deque_pop_if" , since = "CURRENT_RUSTC_VERSION " ) ]
18451844 pub fn pop_front_if ( & mut self , predicate : impl FnOnce ( & mut T ) -> bool ) -> Option < T > {
18461845 let first = self . front_mut ( ) ?;
18471846 if predicate ( first) { self . pop_front ( ) } else { None }
@@ -1854,7 +1853,6 @@ impl<T, A: Allocator> VecDeque<T, A> {
18541853 /// # Examples
18551854 ///
18561855 /// ```
1857- /// #![feature(vec_deque_pop_if)]
18581856 /// use std::collections::VecDeque;
18591857 ///
18601858 /// let mut deque: VecDeque<i32> = vec![0, 1, 2, 3, 4].into();
@@ -1864,10 +1862,10 @@ impl<T, A: Allocator> VecDeque<T, A> {
18641862 /// assert_eq!(deque, [0, 1, 2, 3]);
18651863 /// assert_eq!(deque.pop_back_if(pred), None);
18661864 /// ```
1867- #[ unstable ( feature = "vec_deque_pop_if" , issue = "135889 " ) ]
1865+ #[ stable ( feature = "vec_deque_pop_if" , since = "CURRENT_RUSTC_VERSION " ) ]
18681866 pub fn pop_back_if ( & mut self , predicate : impl FnOnce ( & mut T ) -> bool ) -> Option < T > {
1869- let first = self . back_mut ( ) ?;
1870- if predicate ( first ) { self . pop_back ( ) } else { None }
1867+ let last = self . back_mut ( ) ?;
1868+ if predicate ( last ) { self . pop_back ( ) } else { None }
18711869 }
18721870
18731871 /// Prepends an element to the deque.
0 commit comments