1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
trait Init { type Output; type Size; fn init(value: f64, size: Self::Size) -> Self::Output; fn zeros(size: Self::Size) -> Self::Output { Self::init(0.0, size) } fn ones(size: Self::Size) ->Self::Output { Self::init(1.0, size) } }