pub struct Present;Expand description
A zero-sized difference that indicates the presence of a record.
This difference type has no negation, and present records cannot be retracted. Addition and multiplication maintain presence, and zero does not inhabit the type.
The primary feature of this type is that it has zero size, which reduces the overhead of differential dataflow’s representations for settings where collections either do not change, or for which records are only added (for example, derived facts in Datalog).
Trait Implementations§
Source§impl Columnar for Present
impl Columnar for Present
Source§fn copy_from<'a>(&mut self, other: Ref<'a, Self>)
fn copy_from<'a>(&mut self, other: Ref<'a, Self>)
Repopulates
self from a reference. Read moreSource§fn into_owned<'a>(other: Ref<'a, Self>) -> Self
fn into_owned<'a>(other: Ref<'a, Self>) -> Self
Produce an instance of
Self from Self::Ref<'a>.Source§fn as_columns<'a, I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = &'a Self>,
Self: 'a,
fn as_columns<'a, I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = &'a Self>,
Self: 'a,
Converts a sequence of the references to the type into columnar form.
Source§fn into_columns<I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = Self>,
Self: Sized,
fn into_columns<I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = Self>,
Self: Sized,
Converts a sequence of the type into columnar form. Read more
Source§impl Columnation for Present
impl Columnation for Present
Source§type InnerRegion = CopyRegion<Present>
type InnerRegion = CopyRegion<Present>
The type of region capable of absorbing allocations owned by
the
Self type. Note: not allocations of Self, but of the
things that it owns.Source§impl<'de> Deserialize<'de> for Present
impl<'de> Deserialize<'de> for Present
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Ord for Present
impl Ord for Present
Source§impl PartialOrd for Present
impl PartialOrd for Present
Source§impl Semigroup for Present
impl Semigroup for Present
Source§fn plus_equals(&mut self, _rhs: &Self)
fn plus_equals(&mut self, _rhs: &Self)
The method of
std::ops::AddAssign, for types that do not implement AddAssign.impl Copy for Present
impl Eq for Present
impl StructuralPartialEq for Present
Auto Trait Implementations§
impl Freeze for Present
impl RefUnwindSafe for Present
impl Send for Present
impl Sync for Present
impl Unpin for Present
impl UnsafeUnpin for Present
impl UnwindSafe for Present
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
Source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign, for types that do not implement AddAssign.