[−][src]Struct differential_dataflow::difference::DiffPair
The difference defined by a pair of difference elements.
This type is essentially a "pair", though in Rust the tuple types do not derive the numeric traits we require, and so we need to emulate the types ourselves. In the interest of ergonomics, we may eventually replace the numeric traits with our own, so that we can implement them for tuples and allow users to ignore details like these.
Fields
element1: R1The first element in the pair.
element2: R2The second element in the pair.
Methods
impl<R1, R2> DiffPair<R1, R2>[src]
Trait Implementations
impl<R1: Monoid, R2: Monoid> Monoid for DiffPair<R1, R2>[src]
fn zero() -> Self[src]
fn is_zero(&self) -> bool[src]
Returns true if the element is the additive identity. Read more
impl<R1: PartialOrd, R2: PartialOrd> PartialOrd<DiffPair<R1, R2>> for DiffPair<R1, R2>[src]
fn partial_cmp(&self, other: &DiffPair<R1, R2>) -> Option<Ordering>[src]
fn lt(&self, other: &DiffPair<R1, R2>) -> bool[src]
fn le(&self, other: &DiffPair<R1, R2>) -> bool[src]
fn gt(&self, other: &DiffPair<R1, R2>) -> bool[src]
fn ge(&self, other: &DiffPair<R1, R2>) -> bool[src]
impl<R1: PartialEq, R2: PartialEq> PartialEq<DiffPair<R1, R2>> for DiffPair<R1, R2>[src]
fn eq(&self, other: &DiffPair<R1, R2>) -> bool[src]
fn ne(&self, other: &DiffPair<R1, R2>) -> bool[src]
impl<R1: Copy, R2: Copy> Copy for DiffPair<R1, R2>[src]
impl<R1: Ord, R2: Ord> Ord for DiffPair<R1, R2>[src]
fn cmp(&self, other: &DiffPair<R1, R2>) -> Ordering[src]
fn max(self, other: Self) -> Self1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self1.21.0[src]
Compares and returns the minimum of two values. Read more
fn clamp(self, min: Self, max: Self) -> Self[src]
clamp)Restrict a value to a certain interval. Read more
impl<R1: Eq, R2: Eq> Eq for DiffPair<R1, R2>[src]
impl<R1: Clone, R2: Clone> Clone for DiffPair<R1, R2>[src]
fn clone(&self) -> DiffPair<R1, R2>[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl<T: Copy, R1: Mul<T>, R2: Mul<T>> Mul<T> for DiffPair<R1, R2>[src]
type Output = DiffPair<<R1 as Mul<T>>::Output, <R2 as Mul<T>>::Output>
The resulting type after applying the * operator.
fn mul(self, other: T) -> Self::Output[src]
impl<R1: Neg, R2: Neg> Neg for DiffPair<R1, R2>[src]
type Output = DiffPair<<R1 as Neg>::Output, <R2 as Neg>::Output>
The resulting type after applying the - operator.
fn neg(self) -> Self::Output[src]
impl<'a, R1: AddAssign<&'a R1>, R2: AddAssign<&'a R2>> AddAssign<&'a DiffPair<R1, R2>> for DiffPair<R1, R2>[src]
fn add_assign(&mut self, rhs: &'a Self)[src]
impl<R1: Debug, R2: Debug> Debug for DiffPair<R1, R2>[src]
impl<R1, R2> Abomonation for DiffPair<R1, R2> where
R1: Abomonation,
R2: Abomonation, [src]
R1: Abomonation,
R2: Abomonation,
unsafe fn entomb<W: Write>(&self, _write: &mut W) -> Result<()>[src]
fn extent(&self) -> usize[src]
unsafe fn exhume<'a, 'b>(
&'a mut self,
bytes: &'b mut [u8]
) -> Option<&'b mut [u8]>[src]
&'a mut self,
bytes: &'b mut [u8]
) -> Option<&'b mut [u8]>
impl<R1, R2> Serialize for DiffPair<R1, R2> where
R1: Serialize,
R2: Serialize, [src]
R1: Serialize,
R2: Serialize,
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer, [src]
__S: Serializer,
impl<'de, R1, R2> Deserialize<'de> for DiffPair<R1, R2> where
R1: Deserialize<'de>,
R2: Deserialize<'de>, [src]
R1: Deserialize<'de>,
R2: Deserialize<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>, [src]
__D: Deserializer<'de>,
Auto Trait Implementations
impl<R1, R2> Send for DiffPair<R1, R2> where
R1: Send,
R2: Send,
R1: Send,
R2: Send,
impl<R1, R2> Unpin for DiffPair<R1, R2> where
R1: Unpin,
R2: Unpin,
R1: Unpin,
R2: Unpin,
impl<R1, R2> Sync for DiffPair<R1, R2> where
R1: Sync,
R2: Sync,
R1: Sync,
R2: Sync,
impl<R1, R2> UnwindSafe for DiffPair<R1, R2> where
R1: UnwindSafe,
R2: UnwindSafe,
R1: UnwindSafe,
R2: UnwindSafe,
impl<R1, R2> RefUnwindSafe for DiffPair<R1, R2> where
R1: RefUnwindSafe,
R2: RefUnwindSafe,
R1: RefUnwindSafe,
R2: RefUnwindSafe,
Blanket Implementations
impl<T> Data for T where
T: Ord + Debug + Data, [src]
T: Ord + Debug + Data,
impl<T> ExchangeData for T where
T: Ord + Debug + ExchangeData, [src]
T: Ord + Debug + ExchangeData,
impl<T> Abelian for T where
T: Monoid + Neg<Output = T>, [src]
T: Monoid + Neg<Output = T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Data for T where
T: 'static + Send + Sync + Any + Abomonation,
T: 'static + Send + Sync + Any + Abomonation,
impl<T> Data for T where
T: 'static + Clone, [src]
T: 'static + Clone,
impl<T> ExchangeData for T where
T: Data + Data, [src]
T: Data + Data,
impl<T> DeserializeOwned for T where
T: Deserialize<'de>, [src]
T: Deserialize<'de>,