diff --git a/zebra-chain/src/block.rs b/zebra-chain/src/block.rs index 3ffb41a4..bdf17745 100644 --- a/zebra-chain/src/block.rs +++ b/zebra-chain/src/block.rs @@ -163,14 +163,19 @@ pub struct Block { } impl ZcashSerialize for Block { - fn zcash_serialize(&self, _writer: W) -> Result<(), SerializationError> { - unimplemented!(); + fn zcash_serialize(&self, mut writer: W) -> Result<(), SerializationError> { + self.header.zcash_serialize(&mut writer)?; + self.transactions.zcash_serialize(&mut writer)?; + Ok(()) } } impl ZcashDeserialize for Block { - fn zcash_deserialize(_reader: R) -> Result { - unimplemented!(); + fn zcash_deserialize(mut reader: R) -> Result { + Ok(Block { + header: BlockHeader::zcash_deserialize(&mut reader)?, + transactions: Vec::zcash_deserialize(&mut reader)?, + }) } }