pub enum SetupErrorState {
Canceled,
PartialPrepareInstall,
PartialInstall {
data: UninstallConfig,
no_data: Vec<(usize, TaskTypeId, Txt)>,
},
PartialUninstall,
}Expand description
Represents state of a setup operation that ended in a SetupError.
Variants§
Canceled
Canceled successfully, all changes where reverted.
The operation is canceled by request or by error before it starts committing irreversible changes, either way the system and any previous installation is not affected when ended in this state.
PartialPrepareInstall
Install operation failed before it started making irreversible changes and failed to cleanup temporary changes.
When an install fails during the preparing phase it automatically attempts to cancel, this is the error when that cancel fails. If the install was an update the previous version will still be valid.
PartialInstall
Install operation failed while making irreversible changes to the system.
Operation attempts to complete as much of the install as possible, the associated data
can be used to uninstall the committed changes. Well designed tasks will cleanup all temporary
prepared data on error and generate uninstall data that cleanups even partial written files, but
there is no guarantee that this data will fully uninstall every change.
If the operation was replacing a previous install (update or repair) the data will also
uninstall the previous installation.
Fields
data: UninstallConfigData that can uninstall all the successfully committed changes made during the failed install.
no_data: Vec<(usize, TaskTypeId, Txt)>Tasks that failed without generating uninstall data.
If this is not empty uninstalling data will definitely not fully cleanup the broken install.
Tasks are identified by index on the operation, type and name.
PartialUninstall
Uninstall operation failed while making irreversible changes to the system.
Operation attempts to complete as much of the uninstall as possible, so all tasks without error have completed successfully.
Trait Implementations§
Source§impl Clone for SetupErrorState
impl Clone for SetupErrorState
Source§fn clone(&self) -> SetupErrorState
fn clone(&self) -> SetupErrorState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SetupErrorState
impl Debug for SetupErrorState
Source§impl PartialEq for SetupErrorState
impl PartialEq for SetupErrorState
Source§fn eq(&self, other: &SetupErrorState) -> bool
fn eq(&self, other: &SetupErrorState) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SetupErrorState
Auto Trait Implementations§
impl Freeze for SetupErrorState
impl RefUnwindSafe for SetupErrorState
impl Send for SetupErrorState
impl Sync for SetupErrorState
impl Unpin for SetupErrorState
impl UnsafeUnpin for SetupErrorState
impl UnwindSafe for SetupErrorState
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
Source§impl<T> AnyVarValue for T
impl<T> AnyVarValue for T
Source§fn clone_boxed(&self) -> BoxAnyVarValue
fn clone_boxed(&self) -> BoxAnyVarValue
Source§fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
self and other are equal.Source§fn try_swap(&mut self, other: &mut (dyn AnyVarValue + 'static)) -> bool
fn try_swap(&mut self, other: &mut (dyn AnyVarValue + 'static)) -> bool
other if both are of the same type.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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
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>
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)
&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)
&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<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> FsChangeNote for T
impl<T> FsChangeNote 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>
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>
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