aboutsummaryrefslogtreecommitdiff
path: root/examples/example-hook/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/example-hook/src')
-rw-r--r--examples/example-hook/src/main.rs23
1 files changed, 13 insertions, 10 deletions
diff --git a/examples/example-hook/src/main.rs b/examples/example-hook/src/main.rs
index d6a2dd0..d9a8fd1 100644
--- a/examples/example-hook/src/main.rs
+++ b/examples/example-hook/src/main.rs
@@ -20,7 +20,10 @@
//! Hello, Alice!
//! ```
-use mingling::{hook::ProgramHook, prelude::*};
+use mingling::{
+ hook::{ProgramControlUnit, ProgramHook},
+ prelude::*,
+};
dispatcher!("greet", CMDGreet => EntryGreet);
@@ -30,18 +33,18 @@ fn main() {
// --------- IMPORTANT ---------
program.with_hook(
ProgramHook::<ThisProgram>::empty()
- .on_begin(|| println!("[DEBUG] Program is begin"))
- .on_pre_dispatch(|args| println!("[DEBUG] Pre dispatch: {args:?}"))
- .on_post_dispatch(|c: &_| println!("[DEBUG] Post dispatch: {c:?}"))
- .on_pre_chain(|c: &_, _| {
- println!("[DEBUG] Pre chain: {c}");
+ .on_begin::<_, ()>(|_| println!("[DEBUG] Program is begin"))
+ .on_pre_dispatch(|info| println!("[DEBUG] Pre dispatch: {}", info.arguments.join(" ")))
+ .on_post_dispatch(|info| println!("[DEBUG] Post dispatch: {}", info.entry))
+ .on_pre_chain(|info| {
+ println!("[DEBUG] Pre chain: {}", info.input);
})
- .on_post_chain(|any_output| println!("[DEBUG] Post chain: {}", any_output.member_id))
- .on_finish(|| {
+ .on_post_chain(|info| println!("[DEBUG] Post chain: {}", info.output.member_id))
+ .on_finish(|_| {
println!("[DEBUG] Loop end");
- 0 // Override exit code
+ ProgramControlUnit::OverrideExitCode(0) // Override exit code
})
- .on_pre_render(|c: &_, _| println!("[DEBUG] Pre render: {c}"))
+ .on_pre_render(|info| println!("[DEBUG] Pre render: {}", info.input))
.on_post_render(|_| println!("[DEBUG] Post render")),
);
// --------- IMPORTANT ---------