pub fn dispatch(
event: HookEvent,
modules: &[Arc<dyn HookModule>],
options: &DispatchOptions,
) -> DispatchResultExpand description
Run modules in order. Each gets min(module_deadline, what is left of total_deadline);
once the total is spent the rest are recorded as errors and not started.