Struct RunUndoReport
pub struct RunUndoReport {
pub label: String,
pub steps: Vec<StepOutcome>,
}Expand description
What a whole-run undo did, across every application it touched.
Exists so a caller cannot accidentally report success for a run where one app was unreachable.
Fields§
§label: String§steps: Vec<StepOutcome>Implementations§
§impl RunUndoReport
impl RunUndoReport
pub fn is_complete(&self) -> bool
pub fn is_complete(&self) -> bool
True only when every step came back clean. This is the one predicate a caller may put the word “undone” behind.
pub fn is_refusal(&self) -> bool
pub fn is_refusal(&self) -> bool
True when nothing at all was written — a refusal.
pub fn unfinished(&self) -> Vec<&StepOutcome>
pub fn unfinished(&self) -> Vec<&StepOutcome>
Steps that need saying out loud — anything not clean.
pub fn unreachable_apps(&self) -> Vec<&str>
pub fn unreachable_apps(&self) -> Vec<&str>
Applications whose share could not be attempted at all, in first-seen order and without repeats.
Trait Implementations§
§impl Clone for RunUndoReport
impl Clone for RunUndoReport
§fn clone(&self) -> RunUndoReport
fn clone(&self) -> RunUndoReport
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for RunUndoReport
impl Debug for RunUndoReport
§impl PartialEq for RunUndoReport
impl PartialEq for RunUndoReport
impl StructuralPartialEq for RunUndoReport
Auto Trait Implementations§
impl Freeze for RunUndoReport
impl RefUnwindSafe for RunUndoReport
impl Send for RunUndoReport
impl Sync for RunUndoReport
impl Unpin for RunUndoReport
impl UnsafeUnpin for RunUndoReport
impl UnwindSafe for RunUndoReport
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more