pub struct PatternCandidate {
pub id: PatternCandidateId,
pub pattern: RustPattern,
pub scope: CodeScope,
pub evidence: CorroboratedEvidence,
pub preconditions: Vec<Precondition>,
pub contraindications: Vec<Contraindication>,
pub migration: Vec<MigrationStep>,
pub related_findings: Vec<FindingId>,
}Expand description
A pattern recommendation aggregated from corroborated projectwide
evidence (todo.md §16.2). Exactly the struct from the todo.md sketch, plus
one deliberate omission: there is no confidence field. That is a type-
level guarantee, not a convention — nothing in this module (or anywhere
else) can attach PatternCandidate to Finding/Report/the verdict
path, so this aggregate can never be serialized as a gating result
(todo.md §16.7: “Der Typ selbst garantiert, dass diese Aussage nie als…
CI-Verletzung serialisiert werden kann”).
Fields§
§id: PatternCandidateId§pattern: RustPattern§scope: CodeScope§evidence: CorroboratedEvidence§preconditions: Vec<Precondition>§contraindications: Vec<Contraindication>§migration: Vec<MigrationStep>Trait Implementations§
Source§impl Clone for PatternCandidate
impl Clone for PatternCandidate
Source§fn clone(&self) -> PatternCandidate
fn clone(&self) -> PatternCandidate
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 PatternCandidate
impl Debug for PatternCandidate
Auto Trait Implementations§
impl Freeze for PatternCandidate
impl RefUnwindSafe for PatternCandidate
impl Send for PatternCandidate
impl Sync for PatternCandidate
impl Unpin for PatternCandidate
impl UnsafeUnpin for PatternCandidate
impl UnwindSafe for PatternCandidate
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