use std::path::PathBuf;
use anyhow::Result;
use clap::Args;
use unarchiver::archive::{Archive, ArchiveKind};
#[derive(Args, Debug)]
pub struct UnarchiveOpt {
pub path: PathBuf,
pub out: PathBuf,
}
impl UnarchiveOpt {
pub async fn exec(&self) -> Result<()> {
let archive = Archive::new(self.path.clone(), ArchiveKind::Tar).unwrap();
archive.unarchive(self.out.clone()).await
}
}