pub enum ProjectStep<'gc, C: CustomTypes<S>, S: System<C>> {
Idle,
Yield,
Normal,
ProcessTerminated {
result: Value<'gc, C, S>,
proc: Process<'gc, C, S>,
},
Error {
error: ExecError<C, S>,
proc: Process<'gc, C, S>,
},
Watcher {
create: bool,
watcher: Watcher<'gc, C, S>,
},
Pause,
}
Expand description
Result of stepping through the execution of a Project
.
Variants§
Idle
There were no running processes to execute.
Yield
The project had a running process, which yielded.
Normal
The project had a running process, which did any non-yielding operation.
ProcessTerminated
The project had a running process which terminated successfully.
This can be though of as a special case of ProjectStep::Normal
,
but also returns the result and process so it can be queried for state information if needed.
Error
The project had a running process, which encountered a runtime error. The dead process is returned, which can be queried for diagnostic information.
Watcher
The project had a running process that requested to create or destroy a watcher.
See ProcessStep::Watcher
for more details.
Pause
The project had a running process that requested to pause execution of the (entire) project.
See ProcessStep::Pause
for more details.