pub struct PackObjectSelection {
pub send: Vec<ObjectId>,
pub have_closure: HashSet<ObjectId>,
pub peer_held: Option<Arc<ReachableSet>>,
pub name_hashes: HashMap<ObjectId, u32>,
}Expand description
Objects to emit in a negotiated pack plus peer-held closure for thin deltas.
Fields§
§send: Vec<ObjectId>Objects reachable from wants but not from haves, in valid pack order.
have_closure: HashSet<ObjectId>Negotiation boundary tips (haves), not the full peer object closure.
peer_held: Option<Arc<ReachableSet>>Peer-held objects when pack reachability bitmaps are available (thin-pack bases).
name_hashes: HashMap<ObjectId, u32>Pack name hash of the path each object was found at, used to pair delta candidates: blobs from the tree walk, every object the bitmap name-hash cache covers when bitmaps are used.
Trait Implementations§
Source§impl Clone for PackObjectSelection
impl Clone for PackObjectSelection
Auto Trait Implementations§
impl Freeze for PackObjectSelection
impl RefUnwindSafe for PackObjectSelection
impl Send for PackObjectSelection
impl Sync for PackObjectSelection
impl Unpin for PackObjectSelection
impl UnsafeUnpin for PackObjectSelection
impl UnwindSafe for PackObjectSelection
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