summaryrefslogtreecommitdiff
path: root/examples/src/bin
diff options
context:
space:
mode:
Diffstat (limited to 'examples/src/bin')
-rw-r--r--examples/src/bin/example_action_system.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/examples/src/bin/example_action_system.rs b/examples/src/bin/example_action_system.rs
new file mode 100644
index 0000000..a659eb3
--- /dev/null
+++ b/examples/src/bin/example_action_system.rs
@@ -0,0 +1,18 @@
+use action_system::{action::ActionContext, action_gen, action_pool::ActionPool};
+use tcp_connection::error::TcpTargetError;
+
+#[tokio::main]
+async fn main() {
+ let mut pool = ActionPool::new();
+ PrintNameAction::register_to_pool(&mut pool);
+
+ PrintNameAction::process_at_pool(&pool, ActionContext::local(), "World".to_string())
+ .await
+ .unwrap();
+}
+
+#[action_gen]
+async fn print_name_action(_ctx: ActionContext, name: String) -> Result<(), TcpTargetError> {
+ println!("Hello, {}!", name);
+ Ok(())
+}