pub struct Intersection<'a, T: 'a> { /* private fields */ }Expand description
Represent the intersection set operation that will be applied to the slices.
Note that the intersection is all the elements that are in all the slices at the same time.
§Examples
use sdset::multi::OpBuilder;
use sdset::{SetOperation, Set, SetBuf};
let a = Set::new(&[1, 2, 4])?;
let b = Set::new(&[2, 3, 4, 5, 7])?;
let c = Set::new(&[2, 4, 6, 7])?;
let op = OpBuilder::from_vec(vec![a, b, c]).intersection();
let res: SetBuf<i32> = op.into_set_buf();
assert_eq!(&res[..], &[2, 4]);Implementations§
Trait Implementations§
Source§impl<'a, T: Clone + 'a> Clone for Intersection<'a, T>
impl<'a, T: Clone + 'a> Clone for Intersection<'a, T>
Source§fn clone(&self) -> Intersection<'a, T>
fn clone(&self) -> Intersection<'a, T>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a, T: Ord> SetOperation<&'a T> for Intersection<'a, T>
impl<'a, T: Ord> SetOperation<&'a T> for Intersection<'a, T>
Source§fn extend_collection<C>(self, output: &mut C)where
C: Collection<&'a T>,
fn extend_collection<C>(self, output: &mut C)where
C: Collection<&'a T>,
Extend a
Collection with the values of the Sets using this set operation.Source§fn into_set_buf(self) -> SetBuf<T>where
T: Clone,
fn into_set_buf(self) -> SetBuf<T>where
T: Clone,
Create a
SetBuf using the SetOperation::extend_collection method.Source§impl<'a, T: Ord + Clone> SetOperation<T> for Intersection<'a, T>
impl<'a, T: Ord + Clone> SetOperation<T> for Intersection<'a, T>
Source§fn extend_collection<C>(self, output: &mut C)where
C: Collection<T>,
fn extend_collection<C>(self, output: &mut C)where
C: Collection<T>,
Extend a
Collection with the values of the Sets using this set operation.Source§fn into_set_buf(self) -> SetBuf<T>where
T: Clone,
fn into_set_buf(self) -> SetBuf<T>where
T: Clone,
Create a
SetBuf using the SetOperation::extend_collection method.Auto Trait Implementations§
impl<'a, T> Freeze for Intersection<'a, T>
impl<'a, T> RefUnwindSafe for Intersection<'a, T>where
T: RefUnwindSafe,
impl<'a, T> Send for Intersection<'a, T>where
T: Sync,
impl<'a, T> Sync for Intersection<'a, T>where
T: Sync,
impl<'a, T> Unpin for Intersection<'a, T>
impl<'a, T> UnwindSafe for Intersection<'a, T>where
T: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more