5656
5757#![ stable( feature = "rust1" , since = "1.0.0" ) ]
5858
59+ #[ allow( deprecated) ]
5960use self :: MinMaxResult :: * ;
6061
6162use clone:: Clone ;
@@ -445,6 +446,7 @@ pub trait Iterator {
445446 /// ```
446447 #[ inline]
447448 #[ stable( feature = "rust1" , since = "1.0.0" ) ]
449+ #[ allow( deprecated) ]
448450 fn scan < St , B , F > ( self , initial_state : St , f : F ) -> Scan < Self , St , F >
449451 where Self : Sized , F : FnMut ( & mut St , Self :: Item ) -> Option < B > ,
450452 {
@@ -840,6 +842,8 @@ pub trait Iterator {
840842 #[ unstable( feature = "iter_min_max" ,
841843 reason = "return type may change or may wish to have a closure \
842844 based version as well") ]
845+ #[ deprecated( since = "1.3.0" , reason = "has not proven itself" ) ]
846+ #[ allow( deprecated) ]
843847 fn min_max ( mut self ) -> MinMaxResult < Self :: Item > where Self : Sized , Self :: Item : Ord
844848 {
845849 let ( mut min, mut max) = match self . next ( ) {
@@ -1336,6 +1340,8 @@ impl<I> RandomAccessIterator for Rev<I>
13361340#[ derive( Clone , PartialEq , Debug ) ]
13371341#[ unstable( feature = "iter_min_max" ,
13381342 reason = "unclear whether such a fine-grained result is widely useful" ) ]
1343+ #[ deprecated( since = "1.3.0" , reason = "has not proven itself" ) ]
1344+ #[ allow( deprecated) ]
13391345pub enum MinMaxResult < T > {
13401346 /// Empty iterator
13411347 NoElements ,
@@ -1349,6 +1355,8 @@ pub enum MinMaxResult<T> {
13491355}
13501356
13511357#[ unstable( feature = "iter_min_max" , reason = "type is unstable" ) ]
1358+ #[ deprecated( since = "1.3.0" , reason = "has not proven itself" ) ]
1359+ #[ allow( deprecated) ]
13521360impl < T : Clone > MinMaxResult < T > {
13531361 /// `into_option` creates an `Option` of type `(T,T)`. The returned `Option`
13541362 /// has variant `None` if and only if the `MinMaxResult` has variant
@@ -2249,13 +2257,15 @@ impl<I> ExactSizeIterator for Take<I> where I: ExactSizeIterator {}
22492257#[ must_use = "iterator adaptors are lazy and do nothing unless consumed" ]
22502258#[ stable( feature = "rust1" , since = "1.0.0" ) ]
22512259#[ derive( Clone ) ]
2260+ #[ allow( deprecated) ]
22522261pub struct Scan < I , St , F > {
22532262 iter : I ,
22542263 f : F ,
22552264
22562265 /// The current internal state to be passed to the closure next.
22572266 #[ unstable( feature = "scan_state" ,
22582267 reason = "public fields are otherwise rare in the stdlib" ) ]
2268+ #[ deprecated( since = "1.3.0" , reason = "unclear whether this is necessary" ) ]
22592269 pub state : St ,
22602270}
22612271
@@ -2267,6 +2277,7 @@ impl<B, I, St, F> Iterator for Scan<I, St, F> where
22672277 type Item = B ;
22682278
22692279 #[ inline]
2280+ #[ allow( deprecated) ]
22702281 fn next ( & mut self ) -> Option < B > {
22712282 self . iter . next ( ) . and_then ( |a| ( self . f ) ( & mut self . state , a) )
22722283 }
@@ -2448,6 +2459,8 @@ impl<I> Fuse<I> {
24482459 /// previously returned `None`.
24492460 #[ inline]
24502461 #[ unstable( feature = "iter_reset_fuse" , reason = "seems marginal" ) ]
2462+ #[ deprecated( since = "1.3.0" ,
2463+ reason = "unusual for adaptors to have one-off methods" ) ]
24512464 pub fn reset_fuse ( & mut self ) {
24522465 self . done = false
24532466 }
0 commit comments