Skip to main content

externalize

Function externalize 

Source
pub fn externalize<R: ObjectResolver + ?Sized>(
    d: &mut Descriptor,
    resolver: &R,
    store: &mut impl ObjectStore,
) -> Result<()>
Expand description

Inline → external: put every object’s bytes into store, replacing it with an ObjectSource::External reference.

Objects already external are resolved through resolver (so a reference the resolver cannot satisfy fails closed) and re-put into store, so every object ends up in the destination store. Identical objects collapse to one store entry by content addressing (refcount > 1 is one stored object).