типам, и поразился тщательности отработки ситуации. Но там совершенно однозначно не хватает еще более стандартной функции расширенного умножения с делением. Например, для u16 это должно быть ( u16 * u16 -> u32) / u16 -> u16. В некоторых процессорах такое прям само железо умеет делать. Куда писать?
Issue, куда ж ещё.
lib.rs/muldiv
мне аж интересно, оптимизируется ли оно в одну инструкцию, если таргет умеет
widening_mul в найтли добавили https://github.com/rust-lang/rust/issues/85532
Там очень много всяких if, боюсь, компилятор не поймет идею.
Обсуждают сегодня