dot/commands/mod.rs
1mod add;
2mod init;
3mod remove;
4mod sync;
5
6pub use add::AddCommand;
7pub use init::InitCommand;
8pub use remove::RemoveCommand;
9pub use sync::SyncCommand;
10
11use crate::error::Result;
12
13/// Trait for executable commands.
14/// Each command is self-contained and directly uses the abstractions it needs.
15pub trait Command {
16 /// Execute the command
17 fn execute(self) -> Result<()>;
18}