pub struct Rewrites {
pub copies: Option<Copies>,
pub percentage: Option<f32>,
pub limit: usize,
}
blob
only.Expand description
A structure to capture how to perform rename and copy tracking, used by the rewrites::Tracker.
Fields§
§copies: Option<Copies>
If Some(…)
, also find copies. None
is the default which does not try to detect copies at all.
Note that this is an even more expensive operation than detecting renames stemming from additions and deletions as the resulting set to search through is usually larger.
percentage: Option<f32>
The percentage of similarity needed for files to be considered renamed, defaulting to Some(0.5)
.
This field is similar to git diff -M50%
.
If None
, files are only considered equal if their content matches 100%.
Note that values greater than 1.0 have no different effect than 1.0.
limit: usize
The amount of files to consider for fuzzy rename or copy tracking. Defaults to 1000, meaning that only 1000*1000 combinations can be tested for fuzzy matches, i.e. the ones that try to find matches by comparing similarity. If 0, there is no limit.
If the limit would not be enough to test the entire set of combinations, the algorithm will trade in precision and not run the fuzzy version of identity tests at all. That way results are never partial.
Trait Implementations§
source§impl Default for Rewrites
impl Default for Rewrites
The default settings for rewrites according to the git configuration defaults.
impl Copy for Rewrites
impl StructuralPartialEq for Rewrites
Auto Trait Implementations§
impl Freeze for Rewrites
impl RefUnwindSafe for Rewrites
impl Send for Rewrites
impl Sync for Rewrites
impl Unpin for Rewrites
impl UnwindSafe for Rewrites
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)