Add process completion handling to cli demo
@@ -8,7 +8,7 @@ use watchexec::{
action::{Action, Outcome, Signal},
command::Shell,
config::{InitConfig, RuntimeConfig},
- event::Event,
+ event::{Event, Particle},
fs::Watcher,
handler::PrintDisplay,
signal::Signal as InputSignal,
@@ -109,6 +109,18 @@ fn runtime(args: &ArgMatches<'static>) -> Result<RuntimeConfig> {
eprintln!("[EVENT {}] Signal: {:?} -- {:?}", n, signal, event.metadata);
}
+ for com in event
+ .particulars
+ .iter()
+ .filter(|p| matches!(p, Particle::ProcessCompletion(_)))
+ {
+ if let Particle::ProcessCompletion(Some(status)) = com {
+ eprintln!("[EVENT {}] Process Finished with {}", n, status);
+ } else {
+ eprintln!("[EVENT {}] Process Finished", n);
+ }
+ }
+
if event == &Event::default() {
eprintln!("[EVENT {}] Empty -- {:?}", n, event.metadata);
}
