pub enum ExecutionEvent {
RunStarted {
entries: Vec<(String, String)>,
steps: Vec<StepInfo>,
},
StepStarted(StepInfo),
StepCompleted(StepInfo),
StepFailed {
step: StepInfo,
exit_code: u32,
interrupted: bool,
},
StepSkipped(StepInfo),
Output {
offset: u64,
bytes: Vec<u8>,
},
Progress {
ended: usize,
total: usize,
},
Warning(String),
Completed(Finished),
Interrupted(Finished),
}Expand description
Something that happened in a run.
Variants§
RunStarted
Always the first event: the entries and the steps, in order.
StepStarted(StepInfo)
StepCompleted(StepInfo)
StepFailed
The step ended with a non-zero status; interrupted when a signal
ended it, which also ends the run.
StepSkipped(StepInfo)
Not run, because a step it needs did not finish.
Output
Terminal output: the transcript’s bytes from offset on, exactly as
the program wrote them, escape sequences included.
Progress
After each step ends, however it ended: how many have, of all.
Warning(String)
Something the user should know that does not stop the run.
Completed(Finished)
The run ended by itself: it succeeded, failed or could not start. The checks of the steps that finished are done.
Interrupted(Finished)
The run was stopped, by request or by a signal; nothing is checked.
Trait Implementations§
Source§impl Clone for ExecutionEvent
impl Clone for ExecutionEvent
Source§impl Debug for ExecutionEvent
impl Debug for ExecutionEvent
impl Eq for ExecutionEvent
Source§impl PartialEq for ExecutionEvent
impl PartialEq for ExecutionEvent
Source§impl Serialize for ExecutionEvent
The JSON form documented in docs/EVENTS.md: an object whose event
names the kind, in snake case.
impl Serialize for ExecutionEvent
The JSON form documented in docs/EVENTS.md: an object whose event
names the kind, in snake case.
impl StructuralPartialEq for ExecutionEvent
Auto Trait Implementations§
impl Freeze for ExecutionEvent
impl RefUnwindSafe for ExecutionEvent
impl Send for ExecutionEvent
impl Sync for ExecutionEvent
impl Unpin for ExecutionEvent
impl UnsafeUnpin for ExecutionEvent
impl UnwindSafe for ExecutionEvent
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.