summaryrefslogtreecommitdiff
path: root/rola-cli/src/output
diff options
context:
space:
mode:
Diffstat (limited to 'rola-cli/src/output')
-rw-r--r--rola-cli/src/output/setup.rs16
1 files changed, 15 insertions, 1 deletions
diff --git a/rola-cli/src/output/setup.rs b/rola-cli/src/output/setup.rs
index 824348b..880b236 100644
--- a/rola-cli/src/output/setup.rs
+++ b/rola-cli/src/output/setup.rs
@@ -1,4 +1,4 @@
-use mingling::{Program, macros::program_setup};
+use mingling::{Program, hook::ProgramHook, macros::program_setup};
use shared_functions::info;
use crate::{
@@ -35,6 +35,20 @@ pub fn env_logger_setup(program: &mut Program<ThisProgram>) {
_ => log::Level::Info,
},
});
+
+ // Add Hook
+ program.with_hook(
+ ProgramHook::<ThisProgram>::empty()
+ .on_begin(|| info!("[INFO] Program is begin"))
+ .on_pre_dispatch(|args| info!("[INFO] Pre dispatch: {args:?}"))
+ .on_post_dispatch(|c: &_| info!("[INFO] Post dispatch: {c:?}"))
+ .on_pre_chain(|c: &_, _| {
+ info!("[INFO] Pre chain: {c}");
+ })
+ .on_post_chain(|any_output| info!("[INFO] Post chain: {}", any_output.member_id))
+ .on_pre_render(|c: &_, _| info!("[INFO] Pre render: {c}"))
+ .on_post_render(|_| info!("[INFO] Post render")),
+ );
}
info!("Verbose mode enabled!");