Skip to content

Commit 6e41d35

Browse files
committed
---
yaml --- r: 83912 b: refs/heads/dist-snap c: 9207802 h: refs/heads/master v: v3
1 parent cdc2bea commit 6e41d35

File tree

5 files changed

+17
-39
lines changed

5 files changed

+17
-39
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ refs/heads/try: 0983ebe5310d4eb6d289f636f7ed0536c08bbc0e
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c
9-
refs/heads/dist-snap: de0d696561a381e182c792acbe8f608c8be94c3b
9+
refs/heads/dist-snap: 920780258999aa4a2669a594464cda780798d35f
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1212
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/src/libextra/num/bigint.rs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -520,10 +520,12 @@ impl ToStrRadix for BigUint {
520520

521521
fn fill_concat(v: &[BigDigit], radix: uint, l: uint) -> ~str {
522522
if v.is_empty() { return ~"0" }
523-
let s = vec::reversed(v).map(|n| {
524-
let s = uint::to_str_radix(*n as uint, radix);
525-
str::from_chars(vec::from_elem(l - s.len(), '0')) + s
526-
}).concat();
523+
let mut s = str::with_capacity(v.len() * l);
524+
for v.rev_iter().advance |n| {
525+
let ss = uint::to_str_radix(*n as uint, radix);
526+
s.push_str("0".repeat(l - ss.len()));
527+
s.push_str(ss);
528+
}
527529
s.trim_left_chars(&'0').to_owned()
528530
}
529531
}
@@ -1629,7 +1631,6 @@ mod bigint_tests {
16291631
use std::int;
16301632
use std::num::{IntConvertible, Zero, One, FromStrRadix};
16311633
use std::uint;
1632-
use std::vec;
16331634

16341635
#[test]
16351636
fn test_from_biguint() {
@@ -1646,9 +1647,11 @@ mod bigint_tests {
16461647

16471648
#[test]
16481649
fn test_cmp() {
1649-
let vs = [ &[2], &[1, 1], &[2, 1], &[1, 1, 1] ];
1650-
let mut nums = vec::reversed(vs)
1651-
.map(|s| BigInt::from_slice(Minus, *s));
1650+
let vs = [ &[2 as BigDigit], &[1, 1], &[2, 1], &[1, 1, 1] ];
1651+
let mut nums = ~[];
1652+
for vs.rev_iter().advance |s| {
1653+
nums.push(BigInt::from_slice(Minus, *s));
1654+
}
16521655
nums.push(Zero::zero());
16531656
nums.push_all_move(vs.map(|s| BigInt::from_slice(Plus, *s)));
16541657

branches/dist-snap/src/librustc/middle/resolve.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ use syntax::opt_vec::OptVec;
4141

4242
use std::str;
4343
use std::uint;
44-
use std::vec;
4544
use std::hashmap::{HashMap, HashSet};
4645
use std::util;
4746

@@ -5360,7 +5359,7 @@ impl Resolver {
53605359
if idents.len() == 0 {
53615360
return ~"???";
53625361
}
5363-
return self.idents_to_str(vec::reversed(idents));
5362+
return self.idents_to_str(idents.consume_rev_iter().collect::<~[ast::ident]>());
53645363
}
53655364

53665365
pub fn dump_module(@mut self, module_: @mut Module) {

branches/dist-snap/src/libstd/vec.rs

Lines changed: 3 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -436,16 +436,6 @@ pub fn zip<T, U>(mut v: ~[T], mut u: ~[U]) -> ~[(T, U)] {
436436
w
437437
}
438438

439-
/// Returns a vector with the order of elements reversed
440-
pub fn reversed<T:Copy>(v: &[T]) -> ~[T] {
441-
let mut rs: ~[T] = ~[];
442-
let mut i = v.len();
443-
if i == 0 { return (rs); } else { i -= 1; }
444-
while i != 0 { rs.push(copy v[i]); i -= 1; }
445-
rs.push(copy v[0]);
446-
rs
447-
}
448-
449439
/**
450440
* Iterate over all permutations of vector `v`.
451441
*
@@ -2628,31 +2618,17 @@ mod tests {
26282618
}
26292619

26302620
#[test]
2631-
fn reverse_and_reversed() {
2621+
fn test_reverse() {
26322622
let mut v: ~[int] = ~[10, 20];
26332623
assert_eq!(v[0], 10);
26342624
assert_eq!(v[1], 20);
26352625
v.reverse();
26362626
assert_eq!(v[0], 20);
26372627
assert_eq!(v[1], 10);
2638-
let v2 = reversed::<int>([10, 20]);
2639-
assert_eq!(v2[0], 20);
2640-
assert_eq!(v2[1], 10);
2641-
v[0] = 30;
2642-
assert_eq!(v2[0], 20);
2643-
// Make sure they work with 0-length vectors too.
2644-
2645-
let v4 = reversed::<int>([]);
2646-
assert_eq!(v4, ~[]);
2628+
26472629
let mut v3: ~[int] = ~[];
26482630
v3.reverse();
2649-
}
2650-
2651-
#[test]
2652-
fn reversed_mut() {
2653-
let v2 = reversed::<int>([10, 20]);
2654-
assert_eq!(v2[0], 20);
2655-
assert_eq!(v2[1], 10);
2631+
assert!(v3.is_empty());
26562632
}
26572633

26582634
#[test]

branches/dist-snap/src/test/run-pass/import-glob-crate.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@ use std::vec::*;
1717
pub fn main() {
1818
let mut v = from_elem(0u, 0);
1919
v = append(v, ~[4, 2]);
20-
assert_eq!(reversed(v), ~[2, 4]);
20+
assert_eq!(from_fn(2, |i| 2*(i+1)), ~[2, 4]);
2121
}

0 commit comments

Comments
 (0)