cronback_cli/command.rs
1use anyhow::Result;
2use async_trait::async_trait;
3
4use crate::args::CommonOptions;
5
6#[async_trait]
7pub trait Command {
8 async fn run<
9 A: tokio::io::AsyncWrite + Send + Sync + Unpin,
10 B: tokio::io::AsyncWrite + Send + Sync + Unpin,
11 >(
12 &self,
13 out: &mut tokio::io::BufWriter<A>,
14 err: &mut tokio::io::BufWriter<B>,
15 common_options: &CommonOptions,
16 ) -> Result<()>;
17}