Skip to main content

Crate rars

Crate rars 

Source
Expand description

High-level RAR archive API.

This crate is the supported public Rust API for rars. It is the facade over the version-specific format modules, detects archive families, exposes common member metadata, and streams extraction or recovery output to caller-provided writers without requiring callers to buffer whole archives in memory. New Rust users should depend on this crate rather than the lower-level rars-* implementation crates, which ended at 0.3.x.

Re-exports§

pub use builder::entry_relative_path;
pub use builder::validate_entry_name;
pub use builder::Builder;
pub use detect::detect_archive_family;
pub use detect::find_archive_start;
pub use detect::ArchiveSignature;
pub use detect::SFX_SCAN_LIMIT;
pub use error::Error;
pub use error::Result;
pub use features::Feature;
pub use features::FeatureSet;
pub use filter::formats_supporting_filter;
pub use filter::FilterKind;
pub use filter::FilterPolicy;
pub use filter::FilterSpec;
pub use filter::UnsupportedFilterKind;
pub use version::ArchiveFamily;
pub use version::ArchiveVersion;
pub use write_plan::formats_supporting;
pub use write_plan::supported_features;
pub use write_plan::supports;
pub use write_plan::MemberCoding;
pub use write_plan::PlanShape;
pub use write_plan::WriterOption;

Modules§

builder
One archive builder for every format.
crc32
Shared RAR CRC-32 primitives.
detect
error
features
filter
Data filters: the reversible transforms a writer applies to a member before compressing it, so the encoder sees something it can match on.
rar13
rar50
rar15_40
version
write_plan
What each format’s writer can be asked for, and one place that says no.

Structs§

ArchiveMember
Common member view plus family-specific detail.
ArchiveMemberMeta
Family-independent metadata for a file-like archive member.
ArchiveMembers
Lazy iterator returned by Archive::members.
ArchiveReadOptions
Options used while parsing or extracting archives.
ArchiveReader
Archive reader facade with signature-based dispatch.
EntrySource
A reopenable byte source for an archive member.
ExtractedEntryMeta
Metadata supplied to streaming extraction callbacks.
WriterResources
Shared memory and temporary-file policy for streaming writers.

Enums§

Archive
A parsed RAR archive, preserving the concrete archive family.
ArchiveMemberDetail
Family-specific member metadata.
ArchiveMemberHash
Strong hash metadata attached to an archive member.
WriteOperation
A high-level archive-writing operation.
WriteProgressEvent
Progress reported by archive writers.

Constants§

DEFAULT_WRITER_MEMORY_LIMIT
Default aggregate compression workspace budget (256 MiB).

Traits§

EntryReader
A rewindable input reader used by streaming archive writers.
WriteProgress
Receives archive-writing progress events.

Functions§

extract_volumes_to
Streams a multivolume archive set to caller-provided writers.
extract_volumes_to_with_options
Streams a multivolume archive set to caller-provided writers with read options.