capability_feature_measurement/complexity.rs
1// ---------------- [ File: capability-feature-measurement/src/complexity.rs ]
2crate::ix!();
3
4/// ---------------------------------------------------------------------------
5/// 11) Complexity
6/// ---------------------------------------------------------------------------
7
8/// If we want to guess or detect an overall "complexity" level from the structure
9/// (e.g., `Simple`, `Balanced`, `Complex`), we can do so here.
10pub trait TreeConfigurationComplexityMeasurer {
11 fn measure_tree_configuration_complexity(&self) -> Option<DetectedTreeConfigurationComplexity>;
12}
13
14/// Potential result for a measured complexity. We might not know, so we have `Unknown`.
15#[derive(Debug, Clone, PartialEq)]
16pub enum DetectedTreeConfigurationComplexity {
17 Simple,
18 Balanced,
19 Complex,
20 Unknown,
21 Linear,
22 Star,
23}