#[non_exhaustive]pub struct InstallBatch {
pub desired: Vec<String>,
pub protect_disabled: Vec<String>,
pub enable_requested: Vec<String>,
pub force: bool,
}Expand description
What an install batch will install, and whose disabled state it must restore afterwards.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.desired: Vec<String>Every identifier to install. Dependency closures are resolved per item by the install itself, so this is what the caller asked for, not the closure.
protect_disabled: Vec<String>Recorded mods whose enabled: false must be restored after the batch.
An install upserts every dependency-closure member with enabled: true and
modlist::upsert replaces the entry wholesale, so without this a mod the
user disabled is silently re-enabled by a reinstall.
enable_requested: Vec<String>Mods the caller wants enabled after the batch (e.g. the ones it named).
A reinstall already leaves them enabled, but one skipped because its recorded version is current is not reinstalled at all, so without this naming a disabled mod would leave it disabled. A name that is already enabled, or was not skipped, is left alone.
force: boolReinstall each desired mod even when mods.yml already records the
version that would be installed. Applies to the desired names only, so
their dependencies are still skipped at a recorded version.