Macro alga::impl_semigroup
[−]
[src]
macro_rules! impl_semigroup { (<$M:ty> for $($T:tt)+) => { ... }; }
Implements the semigroup trait for types provded.
Examples
#[derive(PartialEq, Clone)] struct Wrapper<T>(T); impl<T: AbstractMagma<Additive>> AbstractMagma<Additive> for Wrapper<T> { fn operate(&self, right: &Self) -> Self { Wrapper(self.0.operate(&right.0)) } } impl_semigroup!(<Additive> for Wrapper<T> where T: AbstractSemigroup<Additive>);