Enum CloneSource
pub enum CloneSource {
WorkingTree,
Head,
}Expand description
Where the DRY biomarker sources its per-file clone-family counts. The
standalone scan and the gate PROJECTION fingerprint the live working tree;
the gate BASELINE reads HEAD-faithful counts from the ingested clones
table so a working-tree-introduced duplicate no longer appears in both runs
and cancels out of the delta.
Variants§
WorkingTree
Fingerprint the live working tree via
[crate::analyses::clones::run_clones_memoised]. On a clean tree this
equals HEAD, so codelore check and the gate projection both use it.
Head
Read HEAD clone counts from the clones table populated at ingest from
HEAD blobs (facts::ingest::populate_clones_at_head). The gate baseline
uses it so baseline_score is HEAD-faithful and a newly duplicated
function shows as a real negative delta rather than cancelling.
Trait Implementations§
§impl Clone for CloneSource
impl Clone for CloneSource
§fn clone(&self) -> CloneSource
fn clone(&self) -> CloneSource
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for CloneSource
§impl Debug for CloneSource
impl Debug for CloneSource
impl Eq for CloneSource
§impl PartialEq for CloneSource
impl PartialEq for CloneSource
impl StructuralPartialEq for CloneSource
Auto Trait Implementations§
impl Freeze for CloneSource
impl RefUnwindSafe for CloneSource
impl Send for CloneSource
impl Sync for CloneSource
impl Unpin for CloneSource
impl UnsafeUnpin for CloneSource
impl UnwindSafe for CloneSource
Blanket Implementations§
impl<T> Allocation for T
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more