Crate gix_negotiate

Source
Expand description

An implementation of negotiation algorithms to help the server figure out what we have in common so it can optimize the pack it sends to only contain what we don’t have.

Structs§

Flags
Multi purpose, shared flags that are used by negotiation algorithms and by the caller as well
Metadata
Additional data to store with each commit when used by any of our algorithms.

Enums§

Algorithm
The way the negotiation is performed.

Traits§

Negotiator
A delegate to implement a negotiation algorithm.

Functions§

window_size
Calculate how many HAVE lines we may send in one round, with variation depending on whether the transport_is_stateless or not. window_size is the previous (or initial) value of the window size.

Type Aliases§

Error
An error that happened during any of the methods on a Negotiator.
Graph
The graph our callers use to store traversal information, for (re-)use in the negotiation implementation.
IdMap
A map associating an object id with its commit-metadata.