workspacer_cli/
detect_cycles.rs

1// ---------------- [ File: workspacer-cli/src/detect_cycles.rs ]
2crate::ix!();
3
4#[derive(Debug, StructOpt)]
5pub enum DetectCyclesSubcommand {
6    /// Detect circular dependencies in a single crate’s workspace
7    #[structopt(name = "crate")]
8    Crate(DetectCyclesCrateCommand),
9
10    /// Detect circular dependencies in the entire workspace
11    #[structopt(name = "workspace")]
12    Workspace(DetectCyclesWorkspaceCommand),
13}
14
15impl DetectCyclesSubcommand {
16    pub async fn run(&self) -> Result<(), WorkspaceError> {
17        match self {
18            DetectCyclesSubcommand::Crate(cmd) => cmd.run().await,
19            DetectCyclesSubcommand::Workspace(cmd) => cmd.run().await,
20        }
21    }
22}