pub struct ShapeRelation {
pub left: ShapeNormalForm,
pub right: ShapeNormalForm,
pub kind: ShapeRelationKind,
pub proven: bool,
pub witnesses: Vec<ShapeWitness>,
pub diagnostics: Vec<Diagnostic>,
}Expand description
Conservative relation report between two shapes.
A relation is proven only when the runtime can establish it through
subshape checks or explicit conservative rules. Probe-only overlap remains
useful evidence but is not a proof.
Fields§
§left: ShapeNormalFormNormal form for the left input shape.
right: ShapeNormalFormNormal form for the right input shape.
kind: ShapeRelationKindBest relation kind the runtime could determine.
proven: boolWhether the relation kind is proven rather than probe-derived.
witnesses: Vec<ShapeWitness>Probe results collected while comparing the shapes.
diagnostics: Vec<Diagnostic>Diagnostic notes explaining conservative proof rules.
Trait Implementations§
Source§impl Clone for ShapeRelation
impl Clone for ShapeRelation
Source§fn clone(&self) -> ShapeRelation
fn clone(&self) -> ShapeRelation
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 moreAuto Trait Implementations§
impl Freeze for ShapeRelation
impl RefUnwindSafe for ShapeRelation
impl Send for ShapeRelation
impl Sync for ShapeRelation
impl Unpin for ShapeRelation
impl UnsafeUnpin for ShapeRelation
impl UnwindSafe for ShapeRelation
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