cardano-serialization-lib 15.0.3

(De)serialization functions for the Cardano blockchain along with related utility functions
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use crate::*;
use crate::serialization::utils::{deserilized_with_orig_bytes};

impl Deserialize for FixedTransactionBody {
    fn deserialize<R: BufRead + Seek>(raw: &mut Deserializer<R>) -> Result<Self, DeserializeError> {
        let (body, orig_bytes) = deserilized_with_orig_bytes(raw, |raw| -> Result<_, DeserializeError> {
            let body = TransactionBody::deserialize(raw)?;
            Ok(body)
        }).map_err(|e| e.annotate("TransactionBody"))?;
        let hash = TransactionHash(blake2b256(orig_bytes.as_ref()));
        Ok(FixedTransactionBody {
            body,
            tx_hash: hash,
            original_bytes: orig_bytes,
        })
    }
}