Module diff

Source
Expand description

Modules§

blobblob
For using text diffs, please have a look at the imara-diff documentation, maintained by Pascal Kuthe.
command
Launch commands very similarly to Command, but with git specific capabilities and adjustments.
indexindex
new_rewritesblob-diff
object
This crate provides types for read-only git objects backed by bytes provided in git’s serialization format as well as mutable versions of these. Both types of objects can be encoded.
options
rename
resource_cacheblob-diff
rewritesblob
Contains a Tracker to detect rewrites.
tree
tree_with_rewritesblob

Structs§

Options
General diff-related options for configuring rename-tracking and blob diffs.
Rewritesblob
A structure to capture how to perform rename and copy tracking, used by the rewrites::Tracker.

Functions§

index
Produce an entry-by-entry diff between lhs and rhs, sending changes to cb(change) -> Action for consumption, which would turn lhs into rhs if applied. Use pathspec to reduce the set of entries to look at, and pathspec_attributes may be used by pathspecs that perform attribute lookups.
new_rewritesblob-diff
Create an instance by reading all relevant information from the configuration, while being lenient or not. Returns Ok((None, false)) if nothing is configured, or Ok((None, true)) if it’s configured and disabled.
resource_cacheblob-diff
Return a low-level utility to efficiently prepare a blob-level diff operation between two resources, and cache these diffable versions so that matrix-like MxN diffs are efficient.
tree
Calculate the changes that would need to be applied to lhs to get rhs using objects to obtain objects as needed for traversal. state can be used between multiple calls to re-use memory.
tree_with_rewrites
Call for_each repeatedly with all changes that are needed to convert lhs to rhs. Provide a resource_cache to speed up obtaining blobs for similarity checks. tree_diff_state can be used to re-use tree-diff memory between calls. objects are used to lookup trees while performing the diff. Use options to further configure how the rename tracking is performed.