1pub mod analyze;
2pub mod common;
3pub mod generate;
4pub mod scan;
5pub mod serve;
6pub mod train;
7pub mod view;
8
9pub use analyze::{AnalyzeCommand, AnalyzeCommandArgs};
10pub use generate::GenerateCommand;
11pub use scan::ScanCommand;
12use serde::{Deserialize, Serialize};
13pub use serve::ServeCommand;
14pub use train::TrainCommand;
15pub use view::ViewCommand;
16
17use crate::data::DataStreamResult;
18
19pub use common::{AddressPredicate, Target, TargetError};
21
22pub trait Command: Serialize + for<'de> Deserialize<'de> {
24 async fn run(&self) -> Result<(), String>;
26}