pub struct PolicyRuleReport {
pub id: String,
pub category: String,
pub tier: RuleTier,
pub level: RuleLevel,
pub source: RuleLevelSource,
pub corpus_noise_basis_points: Option<u16>,
pub corpus_reviewed_sites: Option<u64>,
}Fields§
§id: String§category: String§tier: RuleTier§level: RuleLevel§source: RuleLevelSource§corpus_noise_basis_points: Option<u16>Smoothed false-positive rate of this rule on the pinned corpus, in basis points, absent when the corpus never adjudicated it.
It is published because it ranks: the report tells the user what to fix first by discounting each rule’s cost by this rate, so a rule with many findings can be left out of that list, and without the number the omission reads as a defect of the tool rather than a measurement.
corpus_reviewed_sites: Option<u64>How many sites the rate above rests on.
A rate published alone is a rate the reader cannot weigh: one adjudicated site and forty adjudicated sites are two different claims, and the smoothing that separates them is invisible in the rate it produces. The two members move together, so a rule carrying neither is a rule the corpus never adjudicated rather than a rule measured at zero.
Trait Implementations§
Source§impl Clone for PolicyRuleReport
impl Clone for PolicyRuleReport
Source§fn clone(&self) -> PolicyRuleReport
fn clone(&self) -> PolicyRuleReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PolicyRuleReport
impl Debug for PolicyRuleReport
impl Eq for PolicyRuleReport
Source§impl PartialEq for PolicyRuleReport
impl PartialEq for PolicyRuleReport
Source§impl Serialize for PolicyRuleReport
impl Serialize for PolicyRuleReport
impl StructuralPartialEq for PolicyRuleReport
Auto Trait Implementations§
impl Freeze for PolicyRuleReport
impl RefUnwindSafe for PolicyRuleReport
impl Send for PolicyRuleReport
impl Sync for PolicyRuleReport
impl Unpin for PolicyRuleReport
impl UnsafeUnpin for PolicyRuleReport
impl UnwindSafe for PolicyRuleReport
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§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