Skip to content

Commit b8e0e0a

Browse files
thestingerbrson
authored andcommitted
---
yaml --- r: 38046 b: refs/heads/try c: 8b13bf7 h: refs/heads/master v: v3
1 parent 165dbf3 commit b8e0e0a

File tree

2 files changed

+7
-11
lines changed

2 files changed

+7
-11
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: 09bb07bed9166105ea961a42b5fff7739ae0d2e9
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: eb8fd119c65c67f3b1b8268cc7341c22d39b7b61
5-
refs/heads/try: 285496bd550817094c31167e7e49378a35560842
5+
refs/heads/try: 8b13bf75306d7b5645531a0eb273b9ce9805e009
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: a810c03263670238bccd64cabb12a23a46e3a278

branches/try/src/libstd/priority_queue.rs

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,9 @@ impl <T: Copy Ord> PriorityQueue<T> {
3838

3939
/// Pop the greatest item from the queue - fails if empty
4040
fn pop(&mut self) -> T {
41-
let last = self.data.pop();
42-
if self.is_not_empty() {
43-
let ret = self.data[0];
44-
self.data[0] = last;
45-
self.siftup(0);
46-
ret
47-
} else { last }
41+
let mut item = self.data.pop();
42+
if self.is_not_empty() { item <-> self.data[0]; self.siftup(0); }
43+
item
4844
}
4945

5046
/// Pop the greatest item from the queue - None if empty
@@ -70,10 +66,10 @@ impl <T: Copy Ord> PriorityQueue<T> {
7066

7167
/// Optimized version of a pop followed by a push - fails if empty
7268
fn replace(&mut self, item: T) -> T {
73-
let ret = self.data[0];
74-
self.data[0] = item;
69+
let mut item = item;
70+
item <-> self.data[0];
7571
self.siftup(0);
76-
ret
72+
item
7773
}
7874

7975
/// Consume the PriorityQueue and return the underlying vector

0 commit comments

Comments
 (0)