protobuf_support/lexer/
int.rspub struct Overflow;
pub fn neg(value: u64) -> Result<i64, Overflow> {
if value <= 0x7fff_ffff_ffff_ffff {
Ok(-(value as i64))
} else if value == 0x8000_0000_0000_0000 {
Ok(-0x8000_0000_0000_0000)
} else {
Err(Overflow)
}
}