Skip to main content

appletheia_application/
command.rs

1pub mod command_dispatch_error;
2pub mod command_dispatcher;
3pub mod command_failure_report;
4pub mod command_handler;
5pub mod command_hash;
6pub mod command_hasher;
7pub mod command_name;
8pub mod command_name_owned;
9pub mod command_name_owned_error;
10pub mod default_command_dispatcher;
11pub mod default_command_hasher;
12
13pub use command_dispatch_error::CommandDispatchError;
14pub use command_dispatcher::CommandDispatcher;
15pub use command_failure_report::CommandFailureReport;
16pub use command_handler::CommandHandler;
17pub use command_hash::{CommandHash, CommandHashError};
18pub use command_hasher::CommandHasher;
19pub use command_hasher::CommandHasherError;
20pub use command_name::CommandName;
21pub use command_name_owned::CommandNameOwned;
22pub use command_name_owned_error::CommandNameOwnedError;
23pub use default_command_dispatcher::DefaultCommandDispatcher;
24pub use default_command_hasher::DefaultCommandHasher;
25
26use serde::Serialize;
27use serde::de::DeserializeOwned;
28
29pub trait Command: Serialize + DeserializeOwned + Send + 'static {
30    const NAME: CommandName;
31}