Ищу статью на английском(можно на русском) где на примере валют демонстрировалась работа системы типов Rust, в точности конвертация валют при помощи типажей From и Into.
Понадобилось освежить в памяти, а гугл не помогает.
Ищу статью на английском(можно на русском) где на примере валют демонстрировалась работа системы типов Rust, в точности конвертация валют при помощи типажей From и Into.
Понадобилось освежить в памяти, а гугл не помогает.
я, кажется, на хабре видел статью или перевод про конвертацию градусов цельсия в градусы фаренгейта с помощью этих типажей
Есть крейт https://crates.io/crates/uom, который описывает СИ и на котором можно делать штуки вроде:
let length = Length::new::<kilometer>(5.0);
let time = Time::new::<second>(15.0);
let _velocity/*: Velocity*/ = length / time;
//let error = length + time; // error[E0308]: mismatched types
Т.к. кроме километров есть еще и метры, футы, световые года и другие единицы измерения, то в этом крейте полно определений этих структур и конвертаций: https://docs.rs/uom/0.21.0/uom/si/length/index.html
Подходит?