mirror of
https://github.com/arnaucube/miden-crypto.git
synced 2026-01-12 00:51:29 +01:00
feat: added From convertions for the MerkleStore
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
use super::mmr::Mmr;
|
||||
use super::{
|
||||
BTreeMap, EmptySubtreeRoots, InnerNodeInfo, MerkleError, MerklePath, MerklePathSet, NodeIndex,
|
||||
RootPath, Rpo256, RpoDigest, ValuePath, Vec, Word,
|
||||
BTreeMap, EmptySubtreeRoots, InnerNodeInfo, MerkleError, MerklePath, MerklePathSet, MerkleTree,
|
||||
NodeIndex, RootPath, Rpo256, RpoDigest, SimpleSmt, ValuePath, Vec, Word,
|
||||
};
|
||||
use crate::utils::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable};
|
||||
|
||||
@@ -393,6 +393,33 @@ impl MerkleStore {
|
||||
}
|
||||
}
|
||||
|
||||
// CONVERTIONS
|
||||
// ================================================================================================
|
||||
|
||||
impl From<MerkleTree> for MerkleStore {
|
||||
fn from(value: MerkleTree) -> Self {
|
||||
let mut store = MerkleStore::new();
|
||||
store.extend(value.inner_nodes());
|
||||
store
|
||||
}
|
||||
}
|
||||
|
||||
impl From<SimpleSmt> for MerkleStore {
|
||||
fn from(value: SimpleSmt) -> Self {
|
||||
let mut store = MerkleStore::new();
|
||||
store.extend(value.inner_nodes());
|
||||
store
|
||||
}
|
||||
}
|
||||
|
||||
impl From<Mmr> for MerkleStore {
|
||||
fn from(value: Mmr) -> Self {
|
||||
let mut store = MerkleStore::new();
|
||||
store.extend(value.inner_nodes());
|
||||
store
|
||||
}
|
||||
}
|
||||
|
||||
// ITERATORS
|
||||
// ================================================================================================
|
||||
|
||||
|
||||
Reference in New Issue
Block a user