easy_ml/differentiation/
operations.rs1use crate::differentiation::Primitive;
9use std::num::{Saturating, Wrapping};
10
11macro_rules! impl_primitive {
12 ($T:tt) => {
13 impl Primitive for $T {}
14 };
15}
16
17impl_primitive!(u8);
18impl_primitive!(i8);
19impl_primitive!(u16);
20impl_primitive!(i16);
21impl_primitive!(u32);
22impl_primitive!(i32);
23impl_primitive!(u64);
24impl_primitive!(i64);
25impl_primitive!(u128);
26impl_primitive!(i128);
27impl_primitive!(f32);
28impl_primitive!(f64);
29impl_primitive!(usize);
30impl_primitive!(isize);
31
32impl<T: Primitive> Primitive for Wrapping<T> {}
33impl<T: Primitive> Primitive for Saturating<T> {}