pub struct ReducibilityFinding {
pub reduction: Option<Reduction>,
pub rule: Option<RuleId>,
pub improvement: ComplexityDelta,
}Expand description
Output of the reducibility analyzer (spec §10.10.2).
Fields§
§reduction: Option<Reduction>Some if a rewrite applies; None is the empty
finding (no rule fires).
rule: Option<RuleId>Which rule fired (mirrors reduction.rule if it’s a
Rewrite). Useful for logging / diagnostics.
improvement: ComplexityDeltaAsymptotic improvement of the witness over the input.
Trait Implementations§
Source§impl Clone for ReducibilityFinding
impl Clone for ReducibilityFinding
Source§fn clone(&self) -> ReducibilityFinding
fn clone(&self) -> ReducibilityFinding
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 moreSource§impl Debug for ReducibilityFinding
impl Debug for ReducibilityFinding
Source§impl PartialEq for ReducibilityFinding
impl PartialEq for ReducibilityFinding
impl StructuralPartialEq for ReducibilityFinding
Auto Trait Implementations§
impl Freeze for ReducibilityFinding
impl RefUnwindSafe for ReducibilityFinding
impl Send for ReducibilityFinding
impl Sync for ReducibilityFinding
impl Unpin for ReducibilityFinding
impl UnsafeUnpin for ReducibilityFinding
impl UnwindSafe for ReducibilityFinding
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
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<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