Expand description
The executor — port of execute.ts / Execute.java, on the full-replacement
state model. Handlers are invoked via boxed closures (no reflection); panics
are caught (the AssertionError/Throwable parity channel); Future
returns are driven by a small std block_on. State is a Value, replaced
wholesale by each stimulus.
Structs§
- Execute
Ports - The ports
collect_examples/execute_planneed.create_contextmaps a step-file to its fresh initial state (None→ a unit state per file);observeris optional per-step instrumentation. The lifetime lets the port closures borrow caller locals (e.g. a conformance observer’s accumulator). - Queued
Example - One runnable example: its name and a callback that runs its steps.
- Step
Observation - One executed step’s outcome.
example_indexis 0-based;ordinalis 1-based.
Enums§
- Step
Outcome - A step’s outcome in the conformance trace.
Functions§
- collect_
examples - Reports every diagnostic in
plan, then returns oneQueuedExampleper planned example, in document order (eachrunis lazy). Port ofcollectExamples. - execute_
plan - Runs every example in
plan, in order, stopping at the first failure. Port ofexecutePlan.
Type Aliases§
- Context
Factory - Maps a step-file to its fresh initial state.
- Observer
- Per-step instrumentation (conformance trace mode).
- Reporter
- Receives every diagnostic collected during planning.