modcli/
command.rs

1/// Defines the trait for commands to implement.
2pub trait Command {
3    fn name(&self) -> &str;
4
5    fn aliases(&self) -> &[&str] {
6        &[]
7    }
8
9    fn help(&self) -> Option<&str> {
10        None
11    }
12
13    fn hidden(&self) -> bool {
14        false // Default: command is visible
15    }
16
17    fn validate(&self, _args: &[String]) -> Result<(), String> {
18        Ok(())
19    }
20
21    fn execute(&self, args: &[String]);
22}