use std::convert::TryInto;
// *** before: ***
// сужающее приведение as молча обрезало число
let big: i64 = 300;
let small = big as u8; // 44, и никакого признака ошибки
// *** in version 1.34: ***
// приведение, которое может не получиться, возвращает Result
let big: i64 = 300;
match big.try_into() {
Ok(small) => println!("влезло: {}", small as u8),
Err(_) => println!("не влезает в u8"),
}