@@ -313,7 +313,7 @@ pub trait IteratorUtil<A> {
313
313
/// ~~~ {.rust}
314
314
/// let xs = [2u, 3];
315
315
/// let ys = [0u, 1, 0, 1, 2];
316
- /// let mut it = xs.iter().flat_map_(|&x| Counter::new (0u, 1).take_(x));
316
+ /// let mut it = xs.iter().flat_map_(|&x| count (0u, 1).take_(x));
317
317
/// // Check that `it` has the same elements as `ys`
318
318
/// let mut i = 0;
319
319
/// for x: uint in it {
@@ -351,7 +351,7 @@ pub trait IteratorUtil<A> {
351
351
/// ~~~ {.rust}
352
352
/// use std::iterator::Counter;
353
353
///
354
- /// for i in Counter::new (0, 10) {
354
+ /// for i in count (0, 10) {
355
355
/// printfln!("%d", i);
356
356
/// }
357
357
/// ~~~
@@ -723,7 +723,7 @@ pub trait MultiplicativeIterator<A> {
723
723
/// use std::iterator::Counter;
724
724
///
725
725
/// fn factorial(n: uint) -> uint {
726
- /// Counter::new (1u, 1).take_while(|&i| i <= n).product()
726
+ /// count (1u, 1).take_while(|&i| i <= n).product()
727
727
/// }
728
728
/// assert!(factorial(0) == 1);
729
729
/// assert!(factorial(1) == 1);
@@ -790,7 +790,7 @@ pub trait ClonableIterator {
790
790
/// # Example
791
791
///
792
792
/// ~~~ {.rust}
793
- /// let a = Counter::new (1,1).take_(1);
793
+ /// let a = count (1,1).take_(1);
794
794
/// let mut cy = a.cycle();
795
795
/// assert_eq!(cy.next(), Some(1));
796
796
/// assert_eq!(cy.next(), Some(1));
@@ -1526,12 +1526,10 @@ pub struct Counter<A> {
1526
1526
step : A
1527
1527
}
1528
1528
1529
- impl < A > Counter < A > {
1530
- /// Creates a new counter with the specified start/step
1531
- #[ inline]
1532
- pub fn new ( start : A , step : A ) -> Counter < A > {
1533
- Counter { state : start, step : step}
1534
- }
1529
+ /// Creates a new counter with the specified start/step
1530
+ #[ inline]
1531
+ pub fn count < A > ( start : A , step : A ) -> Counter < A > {
1532
+ Counter { state : start, step : step}
1535
1533
}
1536
1534
1537
1535
/// A range of numbers from [0, N)
@@ -1618,7 +1616,7 @@ mod tests {
1618
1616
1619
1617
#[ test]
1620
1618
fn test_counter_from_iter ( ) {
1621
- let mut it = Counter :: new ( 0 , 5 ) . take_ ( 10 ) ;
1619
+ let mut it = count ( 0 , 5 ) . take_ ( 10 ) ;
1622
1620
let xs: ~[ int ] = FromIterator :: from_iterator ( & mut it) ;
1623
1621
assert_eq ! ( xs, ~[ 0 , 5 , 10 , 15 , 20 , 25 , 30 , 35 , 40 , 45 ] ) ;
1624
1622
}
@@ -1636,7 +1634,7 @@ mod tests {
1636
1634
}
1637
1635
assert_eq ! ( i, expected. len( ) ) ;
1638
1636
1639
- let ys = Counter :: new ( 30 u, 10 ) . take_ ( 4 ) ;
1637
+ let ys = count ( 30 u, 10 ) . take_ ( 4 ) ;
1640
1638
let mut it = xs. iter ( ) . transform ( |& x| x) . chain_ ( ys) ;
1641
1639
let mut i = 0 ;
1642
1640
for x in it {
@@ -1648,7 +1646,7 @@ mod tests {
1648
1646
1649
1647
#[ test]
1650
1648
fn test_filter_map ( ) {
1651
- let mut it = Counter :: new ( 0 u, 1 u) . take_ ( 10 )
1649
+ let mut it = count ( 0 u, 1 u) . take_ ( 10 )
1652
1650
. filter_map ( |x| if x. is_even ( ) { Some ( x* x) } else { None } ) ;
1653
1651
assert_eq ! ( it. collect:: <~[ uint] >( ) , ~[ 0 * 0 , 2 * 2 , 4 * 4 , 6 * 6 , 8 * 8 ] ) ;
1654
1652
}
@@ -1737,7 +1735,7 @@ mod tests {
1737
1735
fn test_iterator_flat_map ( ) {
1738
1736
let xs = [ 0 u, 3 , 6 ] ;
1739
1737
let ys = [ 0 u, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ] ;
1740
- let mut it = xs. iter ( ) . flat_map_ ( |& x| Counter :: new ( x, 1 ) . take_ ( 3 ) ) ;
1738
+ let mut it = xs. iter ( ) . flat_map_ ( |& x| count ( x, 1 ) . take_ ( 3 ) ) ;
1741
1739
let mut i = 0 ;
1742
1740
for x in it {
1743
1741
assert_eq ! ( x, ys[ i] ) ;
@@ -1784,13 +1782,13 @@ mod tests {
1784
1782
#[ test]
1785
1783
fn test_cycle ( ) {
1786
1784
let cycle_len = 3 ;
1787
- let it = Counter :: new ( 0 u, 1 ) . take_ ( cycle_len) . cycle ( ) ;
1785
+ let it = count ( 0 u, 1 ) . take_ ( cycle_len) . cycle ( ) ;
1788
1786
assert_eq ! ( it. size_hint( ) , ( uint:: max_value, None ) ) ;
1789
1787
for ( i, x) in it. take_ ( 100 ) . enumerate ( ) {
1790
1788
assert_eq ! ( i % cycle_len, x) ;
1791
1789
}
1792
1790
1793
- let mut it = Counter :: new ( 0 u, 1 ) . take_ ( 0 ) . cycle ( ) ;
1791
+ let mut it = count ( 0 u, 1 ) . take_ ( 0 ) . cycle ( ) ;
1794
1792
assert_eq ! ( it. size_hint( ) , ( 0 , Some ( 0 ) ) ) ;
1795
1793
assert_eq ! ( it. next( ) , None ) ;
1796
1794
}
@@ -1852,7 +1850,7 @@ mod tests {
1852
1850
1853
1851
#[ test]
1854
1852
fn test_iterator_size_hint ( ) {
1855
- let c = Counter :: new ( 0 , 1 ) ;
1853
+ let c = count ( 0 , 1 ) ;
1856
1854
let v = & [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ] ;
1857
1855
let v2 = & [ 10 , 11 , 12 ] ;
1858
1856
let vi = v. iter ( ) ;
0 commit comments