[][src]Struct timely::order::Product

pub struct Product<TOuter, TInner> {
    pub outer: TOuter,
    pub inner: TInner,
}

A nested pair of timestamps, one outer and one inner.

We use Product rather than (TOuter, TInner) so that we can derive our own PartialOrd, because Rust just uses the lexicographic total order.

Fields

outer: TOuter

Outer timestamp.

inner: TInner

Inner timestamp.

Methods

impl<TOuter, TInner> Product<TOuter, TInner>[src]

pub fn new(outer: TOuter, inner: TInner) -> Product<TOuter, TInner>[src]

Creates a new product from outer and inner coordinates.

Trait Implementations

impl<TOuter: Timestamp, TInner: Timestamp> Timestamp for Product<TOuter, TInner>[src]

type Summary = Product<TOuter::Summary, TInner::Summary>

A type summarizing action on a timestamp along a dataflow path.

impl<TOuter: Timestamp, TInner: Timestamp> PathSummary<Product<TOuter, TInner>> for Product<TOuter::Summary, TInner::Summary>[src]

impl<TOuter: Timestamp, TInner: Timestamp> Refines<TOuter> for Product<TOuter, TInner>[src]

impl<TOuter: PartialOrder, TInner: PartialOrder> PartialOrder for Product<TOuter, TInner>[src]

fn less_than(&self, other: &Self) -> bool[src]

Returns true iff one element is strictly less than the other.

impl<T1, T2> TotalOrder for Product<T1, T2> where
    T1: Empty,
    T2: TotalOrder
[src]

impl<T1: Empty, T2: Empty> Empty for Product<T1, T2>[src]

impl<TOuter: PartialOrd, TInner: PartialOrd> PartialOrd<Product<TOuter, TInner>> for Product<TOuter, TInner>[src]

impl<TOuter: Copy, TInner: Copy> Copy for Product<TOuter, TInner>[src]

impl<TOuter: PartialEq, TInner: PartialEq> PartialEq<Product<TOuter, TInner>> for Product<TOuter, TInner>[src]

impl<TOuter: Default, TInner: Default> Default for Product<TOuter, TInner>[src]

impl<TOuter: Clone, TInner: Clone> Clone for Product<TOuter, TInner>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<TOuter: Ord, TInner: Ord> Ord for Product<TOuter, TInner>[src]

fn max(self, other: Self) -> Self
1.21.0
[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self
1.21.0
[src]

Compares and returns the minimum of two values. Read more

fn clamp(self, min: Self, max: Self) -> Self[src]

🔬 This is a nightly-only experimental API. (clamp)

Returns max if self is greater than max, and min if self is less than min. Otherwise this will return self. Panics if min > max. Read more

impl<TOuter: Eq, TInner: Eq> Eq for Product<TOuter, TInner>[src]

impl<TOuter: Debug, TInner: Debug> Debug for Product<TOuter, TInner>[src]

Debug implementation to avoid seeing fully qualified path names.

impl<TOuter: Hash, TInner: Hash> Hash for Product<TOuter, TInner>[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl<TOuter, TInner> Abomonation for Product<TOuter, TInner> where
    TOuter: Abomonation,
    TInner: Abomonation
[src]

impl<TOuter, TInner> Serialize for Product<TOuter, TInner> where
    TOuter: Serialize,
    TInner: Serialize
[src]

impl<'de, TOuter, TInner> Deserialize<'de> for Product<TOuter, TInner> where
    TOuter: Deserialize<'de>,
    TInner: Deserialize<'de>, 
[src]

Auto Trait Implementations

impl<TOuter, TInner> Send for Product<TOuter, TInner> where
    TInner: Send,
    TOuter: Send

impl<TOuter, TInner> Sync for Product<TOuter, TInner> where
    TInner: Sync,
    TOuter: Sync

Blanket Implementations

impl<T> Data for T where
    T: 'static + Clone
[src]

impl<T> ExchangeData for T where
    T: Data + Data
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Data for T where
    T: 'static + Send + Sync + Any + Abomonation
[src]