yui_core/abst/add_grp.rs
1use std::ops::{Neg, Sub, SubAssign};
2use crate::{AddMon, AddMonOps};
3
4// Additive Groups
5
6pub trait AddGrpOps<T = Self>:
7 AddMonOps<T> +
8 Neg<Output = T> +
9 Sub<T, Output = T> +
10 for<'a> Sub<&'a T, Output = T>
11{}
12
13pub trait AddGrp:
14 AddMon +
15 AddGrpOps +
16 SubAssign +
17 for<'a> SubAssign<&'a Self>
18where
19 for<'a> &'a Self: AddGrpOps<Self>
20{}