block-db 0.2.0

Local, multi-threaded, durable byte DB.
Documentation
// Authors: Robert Lopez

macro_rules! map_data_file {
    ($block_db:expr, $data_file_id:expr, $method:ident) => {
        if let Some(data_file) = $block_db
            .data_files
            .read()
            .await
            .get($data_file_id)
            .cloned()
        {
            data_file.write().await.$method().await?;
        }
    };
}

macro_rules! map_data_files {
    ($block_db:expr, $method:ident) => {
        for (_, data_file) in $block_db.data_files.read().await.clone() {
            data_file.write().await.$method().await?;
        }
    };
}

pub(crate) use map_data_file;
pub(crate) use map_data_files;