// ./src/generics/impl.md struct Val { val: f64, } struct GenVal { gen_val: T, } // impl of Val impl Val { fn value(&self) -> &f64 { &self.val } } // impl of GenVal for a generic type `T` impl GenVal { fn value(&self) -> &T { &self.gen_val } } fn part0() { let x = Val { val: 3.0 }; let y = GenVal { gen_val: 3i32 }; println!("{}, {}", x.value(), y.value()); } pub fn main() { part0(); }