pub struct SumMonoid<I: SumItem>(pub I);Expand description
Lifting is a no-op and combining is adding.
Tuple Fields§
§0: IImplementations§
Trait Implementations§
Source§impl<'de, I> Deserialize<'de> for SumMonoid<I>where
I: Deserialize<'de> + SumItem,
impl<'de, I> Deserialize<'de> for SumMonoid<I>where
I: Deserialize<'de> + SumItem,
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<I: SumItem> Encodable for SumMonoid<I>
impl<I: SumItem> Encodable for SumMonoid<I>
type Encoded = SumMonoid<I>
type EncodeError = Infallible
type DecodeError = Infallible
fn encode( &self, encoded: &mut Self::Encoded, ) -> Result<(), EncodeError<Self::EncodeError>>
fn decode( &mut self, encoded: &Self::Encoded, ) -> Result<(), DecodeError<Self::DecodeError>>
fn to_encoded(&self) -> Result<Self::Encoded, EncodeError<Self::EncodeError>>
fn from_encoded( encoded: &Self::Encoded, ) -> Result<Self, DecodeError<Self::DecodeError>>
fn batch_encode<Dst: AsDestMutRef<Self::Encoded>>( src: &[Self], dst: &mut [Dst], ) -> Result<(), EncodeError<Self::EncodeError>>
Source§impl<I: SumItem> Monoid for SumMonoid<I>
impl<I: SumItem> Monoid for SumMonoid<I>
type Item = I
Source§fn neutral() -> Self
fn neutral() -> Self
Returns a value that, when combined with some other value x, will return x.
impl<I: Eq + SumItem> Eq for SumMonoid<I>
impl<I: SumItem> StructuralPartialEq for SumMonoid<I>
Auto Trait Implementations§
impl<I> Freeze for SumMonoid<I>where
I: Freeze,
impl<I> RefUnwindSafe for SumMonoid<I>where
I: RefUnwindSafe,
impl<I> Send for SumMonoid<I>where
I: Send,
impl<I> Sync for SumMonoid<I>where
I: Sync,
impl<I> Unpin for SumMonoid<I>where
I: Unpin,
impl<I> UnwindSafe for SumMonoid<I>where
I: UnwindSafe,
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