5 pub mod publish_archive;
18 use generate::Generate;
21 use publish_archive::PublishArchive;
22 use add_remote::AddRemote;
23 use remove_remote::RemoveRemote;
25 use sync_down::SyncDown;
30 use crate::configuration::Configuration;
33 fn before_dependencies(&self) -> Vec<Box<dyn Command>>;
34 fn execute(&self, input: Option<&String>, configuration: &Configuration, command: &String) -> Result<()>;
35 fn after_dependencies(&self) -> Vec<Box<dyn Command>>;
36 fn command(&self) -> &'static str;
37 fn help(&self) -> &'static str;
40 pub fn available_commands() -> Vec<Box<dyn Command>> {
43 Box::new(Generate::new()),
44 Box::new(Update::new()),
45 Box::new(Publish::new()),
46 Box::new(PublishArchive::new()),
47 Box::new(AddRemote::new()),
48 Box::new(RemoveRemote::new()),
49 Box::new(SyncUp::new()),
50 Box::new(SyncDown::new()),
51 Box::new(Status::new()),
52 Box::new(Version::new()),