INNER CODE UNIT · Rust
deserialize_signature_compressed_unchecked
mratsim/constantine · constantine-rust/constantine-ethereum-bls-sig/src/lib.rs:176
pub fn deserialize_signature_compressed_unchecked(
src: &[u8; 96],
) -> Result<EthBlsSignature, ctt_codec_ecc_status> {
let mut result: MaybeUninit<EthBlsSignature> = MaybeUninit::uninit();
unsafe {
let status = ctt_eth_bls_deserialize_signature_compressed_unchecked(
result.as_mut_ptr() as *mut ctt_eth_bls_signature,
src.as_ptr() as *const byte,
);
match status {
ctt_codec_ecc_status::cttCodecEcc_Success => Ok(result.assume_init()),
ctt_codec_ecc_status::cttCodecEcc_PointAtInfinity => Ok(result.assume_init()),
_ => Err(status),
}
}
}
#[must_use]