Skip to content

Commit e3eb3c6

Browse files
gatesnclaude
authored andcommitted
feat: extract execute_until scheduler with per-child done predicates
Move the iterative execution scheduler into a general-purpose `execute_until<M: Matcher>` method on `dyn Array`. The scheduler terminates when the root array matches `M`, while each child can specify its own termination condition via a `DonePredicate` carried in `ExecutionStep::ExecuteChild`. `ExecutionStep` now provides constructor methods: - `execute_child::<M>(idx)` — request child execution until M matches - `done(result)` — signal completion Both `Executable for Columnar` and `Executable for Canonical` are simplified to thin wrappers over `execute_until` with `AnyColumnar` and `AnyCanonical` matchers respectively. Signed-off-by: Nick Gates <nick@vortex.dev> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 962397c commit e3eb3c6

5 files changed

Lines changed: 601 additions & 718 deletions

File tree

0 commit comments

Comments
 (0)