Struct git_pack::data::input::Entry

source ·
pub struct Entry {
    pub header: Header,
    pub header_size: u16,
    pub pack_offset: u64,
    pub compressed: Option<Vec<u8>>,
    pub compressed_size: u64,
    pub crc32: Option<u32>,
    pub decompressed_size: u64,
    pub trailer: Option<ObjectId>,
}
Expand description

An item of the iteration produced by BytesToEntriesIter

Fields§

§header: Header

The header of a pack entry

§header_size: u16

The amount of bytes used to encode the header. pack_offset + header_size is the beginning of the compressed data in the pack.

§pack_offset: u64

The first byte of the entry at which the header can be read.

§compressed: Option<Vec<u8>>

The bytes consumed while producing decompressed These do not contain the header, which makes it possible to easily replace a RefDelta with offset deltas when resolving thin packs. Depends on CompressionMode when the iterator is initialized.

§compressed_size: u64

The amount of bytes the compressed portion of the entry takes, i.e. the portion behind behind the header.

§crc32: Option<u32>

The CRC32 over the complete entry, that is encoded header and compressed object data. Depends on CompressionMode when the iterator is initialized

§decompressed_size: u64

The amount of decompressed bytes of the entry.

§trailer: Option<ObjectId>

Set for the last object in the iteration, providing the hash over all bytes of the iteration for use as trailer in a pack or to verify it matches the trailer.

Implementations§

source§

impl Entry

Create a new input entry from a given data obj set to be placed at the given pack_offset.

This method is useful when arbitrary base entries are created

The amount of bytes this entry may consume in a pack data file

Update our CRC value by recalculating it from our header and compressed data.

Trait Implementations§

source§

impl Clone for Entry

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
source§

impl Debug for Entry

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Entry

Deserialize this value from the given Serde deserializer. Read more
source§

impl Hash for Entry

Feeds this value into the given Hasher. Read more
Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for Entry

This method returns an Ordering between self and other. Read more
Compares and returns the maximum of two values. Read more
Compares and returns the minimum of two values. Read more
Restrict a value to a certain interval. Read more
source§

impl PartialEq<Entry> for Entry

This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<Entry> for Entry

This method returns an ordering between self and other values if one exists. Read more
This method tests less than (for self and other) and is used by the < operator. Read more
This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
This method tests greater than (for self and other) and is used by the > operator. Read more
This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Serialize for Entry

Serialize this value into the given Serde serializer. Read more
source§

impl Eq for Entry

source§

impl StructuralEq for Entry

source§

impl StructuralPartialEq for Entry

Auto Trait Implementations§

§

impl RefUnwindSafe for Entry

§

impl Send for Entry

§

impl Sync for Entry

§

impl Unpin for Entry

§

impl UnwindSafe for Entry

Blanket Implementations§

source§

impl<T> Any for Twhere
    T: 'static + ?Sized,

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere
    T: ?Sized,

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere
    T: ?Sized,

Mutably borrows from an owned value. Read more
§

impl<Q, K> Equivalent<K> for Qwhere
    Q: Eq + ?Sized,
    K: Borrow<Q> + ?Sized,

Checks if this value is equivalent to the given key. Read more
source§

impl<T> From<T> for T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere
    U: From<T>,

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere
    T: Clone,

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere
    U: Into<T>,

The type returned in the event of a conversion error.
Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere
    U: TryFrom<T>,

The type returned in the event of a conversion error.
Performs the conversion.
source§

impl<T> DeserializeOwned for Twhere
    T: for<'de> Deserialize<'de>,