pub struct InstalledPackage { /* private fields */ }Expand description
A record of a package installation at a specific point in time.
Tracks the package reference, install date, file inventory, and an optional checksum for integrity verification.
let pkg = PackageRef::new("denikson-BepInExPack_Valheim", Version::new(5, 4, 2202));
let file = InstalledFile::new("BepInEx/plugins/MyMod.dll", true);
let record = InstalledPackage::now(pkg, vec![file], None);
assert_eq!(record.ref_().id().as_str(), "denikson-BepInExPack_Valheim");
assert_eq!(record.files().len(), 1);
assert!(record.checksum().is_none());Implementations§
Source§impl InstalledPackage
impl InstalledPackage
Sourcepub fn now(
ref_: PackageRef,
files: Vec<InstalledFile>,
checksum: Option<Checksum>,
) -> Self
pub fn now( ref_: PackageRef, files: Vec<InstalledFile>, checksum: Option<Checksum>, ) -> Self
Create a new install record with the current timestamp.
let record = InstalledPackage::now(
PackageRef::new("x753-More_Suits", Version::new(1, 4, 0)),
vec![InstalledFile::new("BepInEx/plugins/More_Suits.dll", false)],
None,
);
assert_eq!(record.ref_().id().as_str(), "x753-More_Suits");
assert!(record.date() <= &chrono::Utc::now());Sourcepub fn ref_(&self) -> &PackageRef
pub fn ref_(&self) -> &PackageRef
Borrow the package reference.
Sourcepub fn files(&self) -> &[InstalledFile]
pub fn files(&self) -> &[InstalledFile]
Borrow the list of installed files.
Sourcepub fn files_mut(&mut self) -> &mut Vec<InstalledFile>
pub fn files_mut(&mut self) -> &mut Vec<InstalledFile>
Mutate the list of installed files.
Trait Implementations§
Source§impl Clone for InstalledPackage
impl Clone for InstalledPackage
Source§fn clone(&self) -> InstalledPackage
fn clone(&self) -> InstalledPackage
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 moreSource§impl Debug for InstalledPackage
impl Debug for InstalledPackage
Source§impl<'de> Deserialize<'de> for InstalledPackage
impl<'de> Deserialize<'de> for InstalledPackage
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for InstalledPackage
Source§impl PartialEq for InstalledPackage
impl PartialEq for InstalledPackage
Source§impl Serialize for InstalledPackage
impl Serialize for InstalledPackage
impl StructuralPartialEq for InstalledPackage
Auto Trait Implementations§
impl Freeze for InstalledPackage
impl RefUnwindSafe for InstalledPackage
impl Send for InstalledPackage
impl Sync for InstalledPackage
impl Unpin for InstalledPackage
impl UnsafeUnpin for InstalledPackage
impl UnwindSafe for InstalledPackage
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
Mutably borrows from an owned value. Read more