mutant_lib/mutant/
data_structures.rs1use autonomi::ScratchpadAddress;
2use chrono::{DateTime, Utc};
3use serde::{Deserialize, Serialize};
4use std::collections::HashMap;
5
6#[derive(Serialize, Deserialize, Debug, Clone)]
8pub struct KeyStorageInfo {
9 pub(crate) pads: Vec<(ScratchpadAddress, Vec<u8>)>,
11 pub(crate) data_size: usize,
13 #[serde(default = "Utc::now")]
15 pub(crate) modified: DateTime<Utc>,
16}
17
18pub type MasterIndex = HashMap<String, KeyStorageInfo>;
20
21#[derive(Serialize, Deserialize, Debug, Default, Clone)]
23pub struct MasterIndexStorage {
24 pub(crate) index: MasterIndex,
26 #[serde(default)]
28 pub(crate) free_pads: Vec<(ScratchpadAddress, Vec<u8>)>,
29 pub(crate) scratchpad_size: usize,
31}