pub enum Format {
InternalTransientNonPersistable,
Tar,
TarGz {
compression_level: Option<u8>,
},
Zip {
compression_level: Option<u8>,
},
}
Expand description
The supported container formats for use in write_stream()
.
Variants§
InternalTransientNonPersistable
An internal format that is suitable only for intra-process communication.
All transformations in the options are ignored. Calling write_stream
is disallowed
as it’s more efficient to call gix_worktree_stream::Stream::into_read() right away.
It is provided here as a basis available without extra dependencies, and as a debugging tool.
Tar
A standard tar
archive.
Use it as well if a custom container format is desired. The idea is to decode it on a separate thread to rewrite the data to the desired format.
TarGz
A convenience format that will gzip
deflate the tar
stream.
Fields
Zip
A standard zip
archive. Note that this format silently converts illformed UTF-8 to UTF-8, which will
equal a change of path.
Requires the zip
feature toggle to have an effect.
§Shortcoming
Even though symlinks are stored as such, for some reason at least on MacOS those aren’t restored. That works,
however, when letting git
create the archive.
Trait Implementations§
impl Copy for Format
impl Eq for Format
impl StructuralPartialEq for Format
Auto Trait Implementations§
impl Freeze for Format
impl RefUnwindSafe for Format
impl Send for Format
impl Sync for Format
impl Unpin for Format
impl UnwindSafe for Format
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.