sign_cast_to

函数 sign_cast_to 

源代码
fn sign_cast_to<const N: usize>(raw: &[u8]) -> Result<[u8; N], ArrowError>
展开描述

将一个大端序二进制补码整数进行符号扩展,或者(当长度更大时)验证并截断为恰好 N 字节。这与 Avro 的十进制二进制编码匹配:负载是一个大端序二进制补码整数,当缩窄时,它必须在不改变符号或值的情况下可表示。

如果 raw.len() < N,则该值进行符号扩展。如果 raw.len() > N,则所有截断的前导字节必须与符号扩展字节匹配,并且第一个保留字节的最高有效位必须与符号匹配(以避免静默溢出)。