xet-core-structures 1.5.2

Core data structures including MerkleHash, metadata shards, and Xorb objects.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use super::file_structs::MDBFileInfo;
use crate::merklehash::MerkleHash;

#[cfg_attr(not(target_family = "wasm"), async_trait::async_trait)]
#[cfg_attr(target_family = "wasm", async_trait::async_trait(?Send))]
pub trait FileReconstructor<E> {
    /// Returns a pair of (file reconstruction information,  maybe shard ID)
    /// Err(_) if an error occurred
    /// Ok(None) if the file is not found.
    async fn get_file_reconstruction_info(
        &self,
        file_hash: &MerkleHash,
    ) -> Result<Option<(MDBFileInfo, Option<MerkleHash>)>, E>;
}