Skip to content

Commit 43b953a

Browse files
committed
---
yaml --- r: 47056 b: refs/heads/try c: 5aa0463 h: refs/heads/master v: v3
1 parent 62770f1 commit 43b953a

File tree

2 files changed

+6
-9
lines changed

2 files changed

+6
-9
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
refs/heads/master: 3bbcac322669cff3abde5be937cc4ec3860f3985
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: a6d9689399d091c3265f00434a69c551a61c28dc
5-
refs/heads/try: a2573290710f4b3f14be475f4ef2af773de7b4c7
5+
refs/heads/try: 5aa04635647287481ceca44cf557b698666fa939
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c

branches/try/src/libstd/deque.rs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -98,17 +98,14 @@ impl<T: Copy> Deque<T> {
9898

9999
/// Grow is only called on full elts, so nelts is also len(elts), unlike
100100
/// elsewhere.
101-
fn grow<T: Copy>(nelts: uint, lo: uint, elts: &[Option<T>]) -> ~[Option<T>] {
101+
fn grow<T>(nelts: uint, lo: uint, elts: &mut [Option<T>]) -> ~[Option<T>] {
102102
assert nelts == elts.len();
103103
let mut rv = ~[];
104104

105-
let mut i = 0u;
106-
let nalloc = uint::next_power_of_two(nelts + 1u);
107-
while i < nalloc {
108-
if i < nelts {
109-
rv.push(elts[(lo + i) % nelts]);
110-
} else { rv.push(None); }
111-
i += 1u;
105+
do vec::grow_fn(&mut rv, nelts + 1) |i| {
106+
let mut element = None;
107+
element <-> elts[(lo + i) % nelts];
108+
element
112109
}
113110

114111
rv

0 commit comments

Comments
 (0)