Most of the refactor. Need to switch machines.
This commit is contained in:
38
retired/nest_lib_rs_old/package.rs
Normal file
38
retired/nest_lib_rs_old/package.rs
Normal file
@@ -0,0 +1,38 @@
|
||||
use std::{collections::HashSet, hash::Hash};
|
||||
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::dependency::Dependency;
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq, Eq)]
|
||||
pub struct Package {
|
||||
name: String,
|
||||
version: semver::Version,
|
||||
source: String,
|
||||
checksum: String,
|
||||
dependencies: HashSet<Dependency>,
|
||||
}
|
||||
|
||||
impl Package {
|
||||
pub fn name(&self) -> String {
|
||||
self.name.clone()
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for Package {
|
||||
fn default() -> Self {
|
||||
Self {
|
||||
name: Default::default(),
|
||||
version: semver::Version::new(0, 1, 0),
|
||||
source: Default::default(),
|
||||
checksum: Default::default(),
|
||||
dependencies: Default::default(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Hash for Package {
|
||||
fn hash<H: std::hash::Hasher>(&self, state: &mut H) {
|
||||
self.name.hash(state);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user