InvocationStep
One station of the invocation pipeline, as it stands for this particular call. `presence` carries the judgement and the rest carries the consequences: whether it can stop the call (`blocking`), whether it rewrites the arguments on the way through (`mutates`), and which step it wraps when it is not a station of its own. `source` names what decided all of that, so a reader can go argue with the right component rather than with the plan.
InvocationStep::__construct()
public function __construct(Milpa\ToolRuntime\Inspection\InvocationStepKind $kind, Milpa\ToolRuntime\Inspection\InvocationStepRole $role, Milpa\ToolRuntime\Inspection\StepPresence $presence, bool $blocking, bool $mutates, ?Milpa\ToolRuntime\Inspection\InvocationStepKind $wraps, string $source):Parameters
| Name | Type | Description |
|---|---|---|
| $kind | Milpa\ToolRuntime\Inspection\InvocationStepKind | |
| $role | Milpa\ToolRuntime\Inspection\InvocationStepRole | |
| $presence | Milpa\ToolRuntime\Inspection\StepPresence | |
| $blocking | bool | |
| $mutates | bool | |
| $wraps | ?Milpa\ToolRuntime\Inspection\InvocationStepKind | |
| $source | string |
InvocationStep::toArray()
public function toArray(): arrayFlattens the step, including the wrapped kind when there is one.