mirror of
https://github.com/bitcoinresearchkit/brk.git
synced 2026-04-26 07:39:59 -07:00
git: reset
This commit is contained in:
32
parser/src/databases/_trait.rs
Normal file
32
parser/src/databases/_trait.rs
Normal file
@@ -0,0 +1,32 @@
|
||||
use std::{fs, io};
|
||||
|
||||
use crate::{structs::WNaiveDate, utils::log};
|
||||
|
||||
use super::databases_folder_path;
|
||||
|
||||
pub trait AnyDatabaseGroup
|
||||
where
|
||||
Self: Sized,
|
||||
{
|
||||
fn import() -> Self;
|
||||
|
||||
fn export(&mut self, height: usize, date: WNaiveDate) -> color_eyre::Result<()>;
|
||||
|
||||
fn folder<'a>() -> &'a str;
|
||||
|
||||
fn reset(&mut self) -> color_eyre::Result<(), io::Error> {
|
||||
log(&format!("Reset {}", Self::folder()));
|
||||
|
||||
self.reset_metadata();
|
||||
|
||||
fs::remove_dir_all(Self::full_path())?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn full_path() -> String {
|
||||
databases_folder_path(Self::folder())
|
||||
}
|
||||
|
||||
fn reset_metadata(&mut self);
|
||||
}
|
||||
Reference in New Issue
Block a user