Skip to content

Commit e7e3923

Browse files
committed
---
yaml --- r: 159023 b: refs/heads/auto c: 12db4de h: refs/heads/master i: 159021: 13da4f5 159019: 43e7771 159015: d25c105 159007: aa138b0 v: v3
1 parent fe18aaa commit e7e3923

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1010
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1111
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1212
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
13-
refs/heads/auto: 01b599eb34125b7bc4d01fd7cc24876179ad6798
13+
refs/heads/auto: 12db4de554faf8e2f6baca4514b1e5983cb60783
1414
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
1515
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1616
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336

branches/auto/src/libcollections/enum_set.rs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,9 +403,29 @@ mod test {
403403
let elems = e_intersection.iter().collect();
404404
assert_eq!(vec![C], elems)
405405

406+
// Another way to express intersection
407+
let e_intersection = e1 - (e1 - e2);
408+
let elems = e_intersection.iter().collect();
409+
assert_eq!(vec![C], elems)
410+
406411
let e_subtract = e1 - e2;
407412
let elems = e_subtract.iter().collect();
408413
assert_eq!(vec![A], elems)
414+
415+
// Bitwise XOR of two sets, aka symmetric difference
416+
let e_symmetric_diff = e1 ^ e2;
417+
let elems = e_symmetric_diff.iter().collect();
418+
assert_eq!(vec![A,B], elems)
419+
420+
// Another way to express symmetric difference
421+
let e_symmetric_diff = (e1 - e2) | (e2 - e1);
422+
let elems = e_symmetric_diff.iter().collect();
423+
assert_eq!(vec![A,B], elems)
424+
425+
// Yet another way to express symmetric difference
426+
let e_symmetric_diff = (e1 | e2) - (e1 & e2);
427+
let elems = e_symmetric_diff.iter().collect();
428+
assert_eq!(vec![A,B], elems)
409429
}
410430

411431
#[test]

0 commit comments

Comments
 (0)