Skip to content

Commit 3122c5c

Browse files
ericktgraydon
authored andcommitted
---
yaml --- r: 40757 b: refs/heads/dist-snap c: 3657d56 h: refs/heads/master i: 40755: 35501fe v: v3
1 parent 3304488 commit 3122c5c

File tree

2 files changed

+38
-1
lines changed

2 files changed

+38
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: a810c03263670238bccd64cabb12a23a46e3a278
99
refs/heads/incoming: e90142e536c150df0d9b4b2f11352152177509b5
10-
refs/heads/dist-snap: 645bd98b602500ef910685eeeb899df298221e35
10+
refs/heads/dist-snap: 3657d5606d7ea5607a0670341a57c3ef20202ea0
1111
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1212
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1313
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/src/libcore/send_map.rs

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,6 +428,25 @@ pub mod linear {
428428
option::unwrap(move value)
429429
}
430430
}
431+
432+
impl<K:Hash IterBytes Eq, V: Eq> LinearMap<K, V>: cmp::Eq {
433+
pure fn eq(&self, other: &LinearMap<K, V>) -> bool {
434+
if self.len() != other.len() { return false; }
435+
436+
for self.each |key, value| {
437+
match other.find_ref(key) {
438+
None => return false,
439+
Some(v) => if value != v { return false },
440+
}
441+
}
442+
443+
return true;
444+
}
445+
446+
pure fn ne(&self, other: &LinearMap<K, V>) -> bool {
447+
!self.eq(other)
448+
}
449+
}
431450
}
432451

433452
#[test]
@@ -538,4 +557,22 @@ pub mod test {
538557
Some(v) => assert *v == 2
539558
}
540559
}
560+
561+
#[test]
562+
pub fn test_eq() {
563+
let mut m1 = ~LinearMap();
564+
m1.insert(1, 2);
565+
m1.insert(2, 3);
566+
m1.insert(3, 4);
567+
568+
let mut m2 = ~LinearMap();
569+
m2.insert(1, 2);
570+
m2.insert(2, 3);
571+
572+
assert m1 != m2;
573+
574+
m2.insert(3, 4);
575+
576+
assert m1 == m2;
577+
}
541578
}

0 commit comments

Comments
 (0)