pub struct LayerDetectionResult {
pub layers: Vec<ArchLayer>,
pub violations: Vec<LayerViolation>,
pub utility_nodes: Vec<UtilityNode>,
pub has_cycles: bool,
pub layer_separation_score: f32,
pub total_nodes_classified: u32,
}Expand description
Full output from a layer detection run.
Fields§
§layers: Vec<ArchLayer>Detected layers, sorted by level ascending.
violations: Vec<LayerViolation>All layering violations found.
utility_nodes: Vec<UtilityNode>Nodes classified as cross-cutting, bridge, or orphan.
has_cycles: booltrue if Tarjan SCC found any dependency cycle.
layer_separation_score: f32Score in [0.0, 1.0] — 1.0 means perfectly separated layers, 0.0 means full cycle chaos.
total_nodes_classified: u32Number of nodes assigned to a layer (utility nodes excluded).
Trait Implementations§
Source§impl Clone for LayerDetectionResult
impl Clone for LayerDetectionResult
Source§fn clone(&self) -> LayerDetectionResult
fn clone(&self) -> LayerDetectionResult
Returns a duplicate of the value. Read more
1.0.0 · 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 LayerDetectionResult
impl Debug for LayerDetectionResult
Auto Trait Implementations§
impl Freeze for LayerDetectionResult
impl RefUnwindSafe for LayerDetectionResult
impl Send for LayerDetectionResult
impl Sync for LayerDetectionResult
impl Unpin for LayerDetectionResult
impl UnsafeUnpin for LayerDetectionResult
impl UnwindSafe for LayerDetectionResult
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