Skip to content

Commit 363d663

Browse files
---
yaml --- r: 105083 b: refs/heads/snap-stage3 c: 8feb2dd h: refs/heads/master i: 105081: 50b0609 105079: 2a2eceb v: v3
1 parent d2eb3b8 commit 363d663

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+1789
-427
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 62f1d68439dcfd509eaca29887afa97f22938373
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: 1599ac9cf26578c881d2235887d694eab4784adb
4+
refs/heads/snap-stage3: 8feb2ddf12b2b4a6df783691d8b41fe6f3364a3e
55
refs/heads/try: db814977d07bd798feb24f6b74c00800ef458a13
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/src/compiletest/runtest.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,7 @@ fn run_debuginfo_test(config: &config, props: &TestProps, testfile: &Path) {
337337
}
338338
}
339339

340-
if tool_path.is_empty() {
340+
if tool_path.equals(&~"") {
341341
fatal(~"cannot found android cross path");
342342
}
343343

@@ -452,7 +452,7 @@ fn run_debuginfo_test(config: &config, props: &TestProps, testfile: &Path) {
452452
let options_to_remove = [~"-O", ~"-g", ~"--debuginfo"];
453453
let new_options = split_maybe_args(options).move_iter()
454454
.filter(|x| !options_to_remove.contains(x))
455-
.collect::<~[~str]>()
455+
.to_owned_vec()
456456
.connect(" ");
457457
Some(new_options)
458458
}

branches/snap-stage3/src/driver/driver.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11+
#[no_uv]; // remove this after stage0
12+
#[allow(attribute_usage)]; // remove this after stage0
13+
extern crate native; // remove this after stage0
14+
1115
#[cfg(rustdoc)]
1216
extern crate this = "rustdoc";
1317

branches/snap-stage3/src/libarena/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
html_root_url = "http://static.rust-lang.org/doc/master")];
2525
#[allow(missing_doc)];
2626
#[feature(managed_boxes)];
27+
#[allow(deprecated_owned_vector)]; // NOTE: remove after stage0
2728

2829
extern crate collections;
2930

branches/snap-stage3/src/libcollections/btree.rs

Lines changed: 44 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -94,11 +94,16 @@ impl<K: Clone + TotalOrd, V: Clone> Clone for BTree<K, V> {
9494

9595
impl<K: TotalOrd, V: TotalEq> Eq for BTree<K, V> {
9696
fn eq(&self, other: &BTree<K, V>) -> bool {
97-
self.root.cmp(&other.root) == Equal
97+
self.equals(other)
9898
}
9999
}
100100

101-
impl<K: TotalOrd, V: TotalEq> TotalEq for BTree<K, V> {}
101+
impl<K: TotalOrd, V: TotalEq> TotalEq for BTree<K, V> {
102+
///Testing equality on BTrees by comparing the root.
103+
fn equals(&self, other: &BTree<K, V>) -> bool {
104+
self.root.cmp(&other.root) == Equal
105+
}
106+
}
102107

103108
impl<K: TotalOrd, V: TotalEq> Ord for BTree<K, V> {
104109
fn lt(&self, other: &BTree<K, V>) -> bool {
@@ -199,6 +204,14 @@ impl<K: Clone + TotalOrd, V: Clone> Clone for Node<K, V> {
199204

200205
impl<K: TotalOrd, V: TotalEq> Eq for Node<K, V> {
201206
fn eq(&self, other: &Node<K, V>) -> bool {
207+
self.equals(other)
208+
}
209+
}
210+
211+
impl<K: TotalOrd, V: TotalEq> TotalEq for Node<K, V> {
212+
///Returns whether two nodes are equal based on the keys of each element.
213+
///Two nodes are equal if all of their keys are the same.
214+
fn equals(&self, other: &Node<K, V>) -> bool{
202215
match *self{
203216
BranchNode(ref branch) => {
204217
if other.is_leaf() {
@@ -219,8 +232,6 @@ impl<K: TotalOrd, V: TotalEq> Eq for Node<K, V> {
219232
}
220233
}
221234

222-
impl<K: TotalOrd, V: TotalEq> TotalEq for Node<K, V> {}
223-
224235
impl<K: TotalOrd, V: TotalEq> Ord for Node<K, V> {
225236
fn lt(&self, other: &Node<K, V>) -> bool {
226237
self.cmp(other) == Less
@@ -394,11 +405,16 @@ impl<K: Clone + TotalOrd, V: Clone> Clone for Leaf<K, V> {
394405

395406
impl<K: TotalOrd, V: TotalEq> Eq for Leaf<K, V> {
396407
fn eq(&self, other: &Leaf<K, V>) -> bool {
397-
self.elts == other.elts
408+
self.equals(other)
398409
}
399410
}
400411

401-
impl<K: TotalOrd, V: TotalEq> TotalEq for Leaf<K, V> {}
412+
impl<K: TotalOrd, V: TotalEq> TotalEq for Leaf<K, V> {
413+
///Implementation of equals function for leaves that compares LeafElts.
414+
fn equals(&self, other: &Leaf<K, V>) -> bool {
415+
self.elts.equals(&other.elts)
416+
}
417+
}
402418

403419
impl<K: TotalOrd, V: TotalEq> Ord for Leaf<K, V> {
404420
fn lt(&self, other: &Leaf<K, V>) -> bool {
@@ -623,11 +639,16 @@ impl<K: Clone + TotalOrd, V: Clone> Clone for Branch<K, V> {
623639

624640
impl<K: TotalOrd, V: TotalEq> Eq for Branch<K, V> {
625641
fn eq(&self, other: &Branch<K, V>) -> bool {
626-
self.elts == other.elts
642+
self.equals(other)
627643
}
628644
}
629645

630-
impl<K: TotalOrd, V: TotalEq> TotalEq for Branch<K, V> {}
646+
impl<K: TotalOrd, V: TotalEq> TotalEq for Branch<K, V> {
647+
///Equals function for Branches--compares all the elements in each branch
648+
fn equals(&self, other: &Branch<K, V>) -> bool {
649+
self.elts.equals(&other.elts)
650+
}
651+
}
631652

632653
impl<K: TotalOrd, V: TotalEq> Ord for Branch<K, V> {
633654
fn lt(&self, other: &Branch<K, V>) -> bool {
@@ -691,11 +712,16 @@ impl<K: Clone + TotalOrd, V: Clone> Clone for LeafElt<K, V> {
691712

692713
impl<K: TotalOrd, V: TotalEq> Eq for LeafElt<K, V> {
693714
fn eq(&self, other: &LeafElt<K, V>) -> bool {
694-
self.key == other.key && self.value == other.value
715+
self.equals(other)
695716
}
696717
}
697718

698-
impl<K: TotalOrd, V: TotalEq> TotalEq for LeafElt<K, V> {}
719+
impl<K: TotalOrd, V: TotalEq> TotalEq for LeafElt<K, V> {
720+
///TotalEq for LeafElts
721+
fn equals(&self, other: &LeafElt<K, V>) -> bool {
722+
self.key.equals(&other.key) && self.value.equals(&other.value)
723+
}
724+
}
699725

700726
impl<K: TotalOrd, V: TotalEq> Ord for LeafElt<K, V> {
701727
fn lt(&self, other: &LeafElt<K, V>) -> bool {
@@ -740,11 +766,16 @@ impl<K: Clone + TotalOrd, V: Clone> Clone for BranchElt<K, V> {
740766

741767
impl<K: TotalOrd, V: TotalEq> Eq for BranchElt<K, V>{
742768
fn eq(&self, other: &BranchElt<K, V>) -> bool {
743-
self.key == other.key && self.value == other.value
769+
self.equals(other)
744770
}
745771
}
746772

747-
impl<K: TotalOrd, V: TotalEq> TotalEq for BranchElt<K, V>{}
773+
impl<K: TotalOrd, V: TotalEq> TotalEq for BranchElt<K, V>{
774+
///TotalEq for BranchElts
775+
fn equals(&self, other: &BranchElt<K, V>) -> bool {
776+
self.key.equals(&other.key)&&self.value.equals(&other.value)
777+
}
778+
}
748779

749780
impl<K: TotalOrd, V: TotalEq> Ord for BranchElt<K, V> {
750781
fn lt(&self, other: &BranchElt<K, V>) -> bool {
@@ -869,7 +900,7 @@ mod test_btree {
869900
fn btree_clone_test() {
870901
let b = BTree::new(1, ~"abc", 2);
871902
let b2 = b.clone();
872-
assert!(b.root == b2.root)
903+
assert!(b.root.equals(&b2.root))
873904
}
874905
875906
//Tests the BTree's cmp() method when one node is "less than" another.

branches/snap-stage3/src/libcollections/enum_set.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
1616
use std::num::Bitwise;
1717

18-
#[deriving(Clone, Eq, TotalEq, Hash, Show)]
18+
#[deriving(Clone, Eq, Hash, Show)]
1919
/// A specialized Set implementation to use enum types.
2020
pub struct EnumSet<E> {
2121
// We must maintain the invariant that no bits are set

0 commit comments

Comments
 (0)