Struct sdset::multi::SymmetricDifference [−][src]
pub struct SymmetricDifference<'a, T: 'a> { /* fields omitted */ }
Represent the symmetric difference set operation that will be applied to the slices.
Examples
use sdset::multi::OpBuilder; use sdset::{SetOperation, Set, SetBuf}; let a = Set::new(&[1, 2, 4])?; let b = Set::new(&[2, 3, 5, 7])?; let c = Set::new(&[4, 6, 7])?; let op = OpBuilder::from_vec(vec![a, b, c]).symmetric_difference(); let res: SetBuf<i32> = op.into_set_buf(); assert_eq!(&res[..], &[1, 3, 5, 6]);
Methods
impl<'a, T> SymmetricDifference<'a, T>
[src]
impl<'a, T> SymmetricDifference<'a, T>
pub fn new(slices: Vec<&'a Set<T>>) -> Self
[src]
pub fn new(slices: Vec<&'a Set<T>>) -> Self
Construct one with slices checked to be sorted and deduplicated.
Trait Implementations
impl<'a, T: Clone + 'a> Clone for SymmetricDifference<'a, T>
[src]
impl<'a, T: Clone + 'a> Clone for SymmetricDifference<'a, T>
fn clone(&self) -> SymmetricDifference<'a, T>
[src]
fn clone(&self) -> SymmetricDifference<'a, T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl<'a, T: Ord + Clone> SetOperation<&'a T, T> for SymmetricDifference<'a, T>
[src]
impl<'a, T: Ord + Clone> SetOperation<&'a T, T> for SymmetricDifference<'a, T>
fn extend_vec(self, output: &mut Vec<T>)
[src]
fn extend_vec(self, output: &mut Vec<T>)
fn into_set_buf(self) -> SetBuf<U>
[src]
fn into_set_buf(self) -> SetBuf<U>
Create a SetBuf
using the SetOperation::extend_vec
method.
impl<'a, T: Ord> SetOperation<&'a T, &'a T> for SymmetricDifference<'a, T>
[src]
impl<'a, T: Ord> SetOperation<&'a T, &'a T> for SymmetricDifference<'a, T>
fn extend_vec(self, output: &mut Vec<&'a T>)
[src]
fn extend_vec(self, output: &mut Vec<&'a T>)
fn into_set_buf(self) -> SetBuf<U>
[src]
fn into_set_buf(self) -> SetBuf<U>
Create a SetBuf
using the SetOperation::extend_vec
method.
Auto Trait Implementations
impl<'a, T> Send for SymmetricDifference<'a, T> where
T: Sync,
impl<'a, T> Send for SymmetricDifference<'a, T> where
T: Sync,
impl<'a, T> Sync for SymmetricDifference<'a, T> where
T: Sync,
impl<'a, T> Sync for SymmetricDifference<'a, T> where
T: Sync,