MCPcopy Create free account
hub / github.com/carsonpo/haystackdb / serialize

Method serialize

src/structures/wal.rs:39–59  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

37
38impl TreeSerialization for CommitListItem {
39 fn serialize(&self) -> Vec<u8> {
40 let mut serialized = Vec::new();
41
42 serialized.extend_from_slice(self.hash.to_le_bytes().as_ref());
43 serialized.extend_from_slice(self.timestamp.to_le_bytes().as_ref());
44
45 serialized.extend_from_slice(self.vectors.len().to_le_bytes().as_ref());
46 for vector in &self.vectors {
47 serialized.extend_from_slice(vector.as_ref());
48 }
49
50 serialized.extend_from_slice(self.kvs.len().to_le_bytes().as_ref());
51 for sub_kvs in &self.kvs {
52 serialized.extend_from_slice(sub_kvs.len().to_le_bytes().as_ref());
53 for kv in sub_kvs {
54 serialized.extend_from_slice(&kv.serialize());
55 }
56 }
57
58 serialized
59 }
60}
61
62impl TreeDeserialization for CommitListItem {

Callers 1

deserializeMethod · 0.45

Calls 1

lenMethod · 0.80

Tested by

no test coverage detected