Skip to main content

set_difference

Function set_difference 

Source
pub fn set_difference<T>(left: &[T], right: &[T]) -> Vec<T>
where T: Clone + PartialEq,
Expand description

Returns the unique members of left \ right in the order they first appear in left.

Examples found in repository?
examples/basic_usage.rs (line 19)
6fn main() {
7    let left = ["circle", "triangle", "triangle", "square"];
8    let right = ["square", "hexagon", "triangle"];
9
10    assert!(contains_member(&left, &"circle"));
11    assert!(is_subset(&["triangle", "square"], &left));
12    assert!(!are_disjoint(&left, &right));
13
14    assert_eq!(
15        set_union(&left, &right),
16        vec!["circle", "triangle", "square", "hexagon"]
17    );
18    assert_eq!(set_intersection(&left, &right), vec!["triangle", "square"]);
19    assert_eq!(set_difference(&left, &right), vec!["circle"]);
20    assert_eq!(
21        set_symmetric_difference(&left, &right),
22        vec!["circle", "hexagon"]
23    );
24}