pub struct CriticalComplexity { /* private fields */ }Expand description
Predicate for critical complexity (both cyclomatic AND cognitive exceed thresholds).
This represents functions that are both hard to test AND hard to understand, indicating the highest priority for refactoring.
Implementations§
Source§impl CriticalComplexity
impl CriticalComplexity
Sourcepub fn new(cyclomatic_threshold: u32, cognitive_threshold: u32) -> Self
pub fn new(cyclomatic_threshold: u32, cognitive_threshold: u32) -> Self
Create a new predicate with the given thresholds.
Sourcepub fn from_rules(rules: &ValidationRuleSet) -> Self
pub fn from_rules(rules: &ValidationRuleSet) -> Self
Create from a ValidationRuleSet using the critical threshold.
Sourcepub fn description(&self) -> String
pub fn description(&self) -> String
Get a description of what this predicate checks.
Trait Implementations§
Source§impl Clone for CriticalComplexity
impl Clone for CriticalComplexity
Source§fn clone(&self) -> CriticalComplexity
fn clone(&self) -> CriticalComplexity
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for CriticalComplexity
Source§impl Debug for CriticalComplexity
impl Debug for CriticalComplexity
Source§impl Predicate<FunctionMetrics> for CriticalComplexity
impl Predicate<FunctionMetrics> for CriticalComplexity
Source§fn check(&self, metrics: &FunctionMetrics) -> bool
fn check(&self, metrics: &FunctionMetrics) -> bool
Check if the value satisfies this predicate.
Auto Trait Implementations§
impl Freeze for CriticalComplexity
impl RefUnwindSafe for CriticalComplexity
impl Send for CriticalComplexity
impl Sync for CriticalComplexity
impl Unpin for CriticalComplexity
impl UnsafeUnpin for CriticalComplexity
impl UnwindSafe for CriticalComplexity
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> EnsureExt<T> for T
impl<T> EnsureExt<T> for T
Source§fn ensure<P, E>(self, predicate: P, error: E) -> Validation<T, NonEmptyVec<E>>where
P: Predicate<T>,
fn ensure<P, E>(self, predicate: P, error: E) -> Validation<T, NonEmptyVec<E>>where
P: Predicate<T>,
Validate that this value satisfies the given predicate. Read more
Source§fn ensure_with<P, E, F>(
self,
predicate: P,
error_fn: F,
) -> Validation<T, NonEmptyVec<E>>
fn ensure_with<P, E, F>( self, predicate: P, error_fn: F, ) -> Validation<T, NonEmptyVec<E>>
Validate with an error-generating function. Read more
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>
Converts
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>
Converts
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