INNER CODE UNIT · Rust
to_bytes
CympleTech/ESSE · types/data/src/lib.rs:34
pub fn to_bytes(&self) -> Vec<u8> {
let mut bytes = vec![];
bytes.extend_from_slice(&self.did);
if let Some(p) = self.pid {
bytes.extend_from_slice(&p);
} else {
bytes.extend_from_slice(&[0u8; 32]);
}
bytes.extend_from_slice(&mut self.time.0.to_le_bytes());
bytes.extend_from_slice(&mut self.time.1.to_le_bytes());
bytes.extend_from_slice(&mut self.owner.id_to_bytes());
bytes.extend_from_slice(&mut T::proof_to_bytes(&self.proof));
let mut mime_bytes = self.value.0.as_bytes();
bytes.extend_from_slice(&mut (mime_bytes.len() as u32).to_le_bytes());
bytes.extend_from_slice(&mut mime_bytes);
bytes.extend_from_slice(&self.value.1);