Skip to main content

comparable

Function comparable 

Source
pub fn comparable(lock: Lock) -> Result<Binds, String>
Expand description

The entries of lock a fresh accept may merge over.

Fingerprints from an older format are not comparable to what this build derives, so they are dropped rather than carried under a stamp claiming they are current; their pages read as unlocked until their own docs accept runs, which is what lets a repo migrate one accept at a time.

A lock from a newer format is equally incomparable but is not this build’s to discard, so it is refused instead. The asymmetry is the point: an older entry is worthless, a newer one is someone else’s valid work. Accepting is deliberately stricter than checking here: a check against a newer lock only misreports, while an accept would overwrite it.