Struct similar::algorithms::Capture
source · pub struct Capture(_);Expand description
A DiffHook that captures all diff operations.
Implementations§
source§impl Capture
impl Capture
sourcepub fn into_grouped_ops(self, n: usize) -> Vec<Vec<DiffOp>>
pub fn into_grouped_ops(self, n: usize) -> Vec<Vec<DiffOp>>
Isolate change clusters by eliminating ranges with no changes.
This is equivalent to calling group_diff_ops on Capture::into_ops.
Trait Implementations§
source§impl DiffHook for Capture
impl DiffHook for Capture
§type Error = Infallible
type Error = Infallible
The error produced from the hook methods.
source§fn equal(
&mut self,
old_index: usize,
new_index: usize,
len: usize
) -> Result<(), Self::Error>
fn equal(
&mut self,
old_index: usize,
new_index: usize,
len: usize
) -> Result<(), Self::Error>
Called when lines with indices
old_index (in the old version) and
new_index (in the new version) start an section equal in both
versions, of length len.source§fn delete(
&mut self,
old_index: usize,
old_len: usize,
new_index: usize
) -> Result<(), Self::Error>
fn delete(
&mut self,
old_index: usize,
old_len: usize,
new_index: usize
) -> Result<(), Self::Error>
Called when a section of length
old_len, starting at old_index,
needs to be deleted from the old version.source§fn insert(
&mut self,
old_index: usize,
new_index: usize,
new_len: usize
) -> Result<(), Self::Error>
fn insert(
&mut self,
old_index: usize,
new_index: usize,
new_len: usize
) -> Result<(), Self::Error>
Called when a section of the new version, of length
new_len
and starting at new_index, needs to be inserted at position `old_index’.source§fn replace(
&mut self,
old_index: usize,
old_len: usize,
new_index: usize,
new_len: usize
) -> Result<(), Self::Error>
fn replace(
&mut self,
old_index: usize,
old_len: usize,
new_index: usize,
new_len: usize
) -> Result<(), Self::Error>
Called when a section of the old version, starting at index
old_index and of length old_len, needs to be replaced with a
section of length new_len, starting at new_index, of the new
version. Read more