pub struct StructureFingerprint {
pub hash: String,
pub nodes: u32,
}Expand description
A subtree’s structural fingerprint: what the fold covered, and how much of it.
Computed host-side in one walk, so a rule does not pay a per-node boundary crossing to
inspect a tree’s shape — the exact cost invariant 3 (docs/architecture.md §4) exists
to prevent. See NodeArena::structure_fingerprint for the normalization contract.
Fields§
§hash: Stringblake3 of the normalized fold, lowercase hex.
nodes: u32How many nodes the fold covered. Exact, not approximate: it is the thresholding input, so a rule knows whether a match is trivially small without a second traversal.
Trait Implementations§
Source§impl Clone for StructureFingerprint
impl Clone for StructureFingerprint
Source§fn clone(&self) -> StructureFingerprint
fn clone(&self) -> StructureFingerprint
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 StructureFingerprint
impl Debug for StructureFingerprint
impl Eq for StructureFingerprint
Source§impl PartialEq for StructureFingerprint
impl PartialEq for StructureFingerprint
impl StructuralPartialEq for StructureFingerprint
Auto Trait Implementations§
impl Freeze for StructureFingerprint
impl RefUnwindSafe for StructureFingerprint
impl Send for StructureFingerprint
impl Sync for StructureFingerprint
impl Unpin for StructureFingerprint
impl UnsafeUnpin for StructureFingerprint
impl UnwindSafe for StructureFingerprint
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