diff --git a/src/helpers.rs b/src/helpers.rs index 721716bb..060aad8c 100644 --- a/src/helpers.rs +++ b/src/helpers.rs @@ -22,7 +22,6 @@ mod ui_thread; pub use ui_thread::UIThread; mod extracter; -pub use extracter::TarEntriesVisitor; mod readable_rx; diff --git a/src/helpers/async_extracter.rs b/src/helpers/async_extracter.rs index 2ae31a23..2b1298bf 100644 --- a/src/helpers/async_extracter.rs +++ b/src/helpers/async_extracter.rs @@ -232,6 +232,18 @@ where .await } +/// Visitor must iterate over all entries. +/// Entires can be in arbitary order. +pub trait TarEntriesVisitor { + fn visit(&mut self, entries: Entries<'_, R>) -> Result<(), BinstallError>; +} + +impl TarEntriesVisitor for &mut V { + fn visit(&mut self, entries: Entries<'_, R>) -> Result<(), BinstallError> { + (*self).visit(entries) + } +} + pub async fn extract_tar_based_stream_and_visit( stream: impl Stream> + Unpin, fmt: TarBasedFmt, diff --git a/src/helpers/extracter.rs b/src/helpers/extracter.rs index ee5129b3..b1737528 100644 --- a/src/helpers/extracter.rs +++ b/src/helpers/extracter.rs @@ -4,25 +4,13 @@ use std::path::Path; use flate2::bufread::GzDecoder; use log::debug; -use tar::{Archive, Entries}; +use tar::Archive; use xz2::bufread::XzDecoder; use zip::read::ZipArchive; use zstd::stream::Decoder as ZstdDecoder; use crate::{BinstallError, TarBasedFmt}; -/// Visitor must iterate over all entries. -/// Entires can be in arbitary order. -pub trait TarEntriesVisitor { - fn visit(&mut self, entries: Entries<'_, R>) -> Result<(), BinstallError>; -} - -impl TarEntriesVisitor for &mut V { - fn visit(&mut self, entries: Entries<'_, R>) -> Result<(), BinstallError> { - (*self).visit(entries) - } -} - pub(super) fn create_tar_decoder( dat: impl BufRead + 'static, fmt: TarBasedFmt,