Remove all Atomic hooks from a matcher list. Preserves non-Atomic hooks. Removes empty matchers (those with no remaining hooks after Atomic hooks are removed).
(matchers: &mut Vec<GeminiHookMatcher>)
| 822 | /// Preserves non-Atomic hooks. Removes empty matchers (those with no |
| 823 | /// remaining hooks after Atomic hooks are removed). |
| 824 | fn remove_atomic_hooks(matchers: &mut Vec<GeminiHookMatcher>) { |
| 825 | for m in matchers.iter_mut() { |
| 826 | m.hooks.retain(|h| !is_atomic_hook(&h.command)); |
| 827 | } |
| 828 | // Remove empty matchers |
| 829 | matchers.retain(|m| !m.hooks.is_empty()); |
| 830 | } |
| 831 | |
| 832 | // Tests |
| 833 |