soroban_cli/commands/contract/
alias.rs1use crate::commands::global;
2
3pub mod add;
4pub mod ls;
5pub mod remove;
6pub mod show;
7
8#[derive(Debug, clap::Subcommand)]
9pub enum Cmd {
10 Remove(remove::Cmd),
12
13 Add(add::Cmd),
15
16 Show(show::Cmd),
18
19 Ls(ls::Cmd),
21}
22
23#[derive(thiserror::Error, Debug)]
24pub enum Error {
25 #[error(transparent)]
26 Remove(#[from] remove::Error),
27
28 #[error(transparent)]
29 Add(#[from] add::Error),
30
31 #[error(transparent)]
32 Show(#[from] show::Error),
33
34 #[error(transparent)]
35 Ls(#[from] ls::Error),
36}
37
38impl Cmd {
39 pub fn run(&self, global_args: &global::Args) -> Result<(), Error> {
40 match &self {
41 Cmd::Remove(remove) => remove.run(global_args)?,
42 Cmd::Add(add) => add.run(global_args)?,
43 Cmd::Show(show) => show.run(global_args)?,
44 Cmd::Ls(ls) => ls.run()?,
45 }
46 Ok(())
47 }
48}