use super::*;
pub(crate) const NOT_YET_BLURB: &str = "not yet implemented. \
See docs/ROADMAP.md for the roadmap \
and current status. Use `mnem export` + `mnem import` + file transport \
as the interim workaround.";
pub(crate) fn ex_config<T>(verb: &str) -> Result<T> {
Err(anyhow!("mnem {verb}: {NOT_YET_BLURB}"))
}
#[derive(clap::Args, Debug)]
#[command(after_long_help = "\
Deferred to a future release.
")]
pub(crate) struct RevertArgs {
pub commit: String,
}
pub(crate) fn run_revert(_o: Option<&Path>, _a: RevertArgs) -> Result<()> {
ex_config("revert")
}
#[derive(clap::Args, Debug)]
#[command(after_long_help = "\
Deferred to a future release. Walks the DAG and re-hashes every block.
")]
pub(crate) struct FsckArgs;
pub(crate) fn run_fsck(_o: Option<&Path>, _a: FsckArgs) -> Result<()> {
ex_config("fsck")
}
#[derive(clap::Args, Debug)]
#[command(after_long_help = "\
Deferred to a future release. Drops unreferenced blocks after a reachability walk.
")]
pub(crate) struct GcArgs;
pub(crate) fn run_gc(_o: Option<&Path>, _a: GcArgs) -> Result<()> {
ex_config("gc")
}