pub(crate) struct ExtractionContext<P: PlatformAdapter> {
cached_paths: HashMap<PathBuf, CachedPath>,
cleanup: ExtractionCleanup,
limits: ExtractionLimits,
current_total_size: u64,
current_file_count: usize,
platform: PhantomData<P>,
}Fields§
§cached_paths: HashMap<PathBuf, CachedPath>§cleanup: ExtractionCleanup§limits: ExtractionLimits§current_total_size: u64§current_file_count: usize§platform: PhantomData<P>Implementations§
Source§impl<P: PlatformAdapter> ExtractionContext<P>
impl<P: PlatformAdapter> ExtractionContext<P>
pub(crate) fn new(limits: ExtractionLimits) -> Self
pub(crate) fn commit(self)
pub(crate) fn validate_target( &mut self, path: &Path, destination_dir: &Path, ) -> Result<()>
pub(crate) fn ensure_directory_tree(&mut self, path: &Path) -> Result<()>
pub(crate) fn check_limits( &mut self, path: &Path, entry_size: u64, compressed_size: u64, ) -> Result<()>
pub(crate) fn record_file(&mut self, path: &Path)
fn record_directory(&mut self, path: &Path)
fn inspect_cached(&mut self, path: &Path) -> Result<CachedPath>
Auto Trait Implementations§
impl<P> Freeze for ExtractionContext<P>
impl<P> RefUnwindSafe for ExtractionContext<P>where
P: RefUnwindSafe,
impl<P> Send for ExtractionContext<P>where
P: Send,
impl<P> Sync for ExtractionContext<P>where
P: Sync,
impl<P> Unpin for ExtractionContext<P>where
P: Unpin,
impl<P> UnwindSafe for ExtractionContext<P>where
P: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more