39 lines
735 B
Rust
39 lines
735 B
Rust
use pkg::Packager;
|
|
|
|
pub mod pkg;
|
|
|
|
pub mod debian;
|
|
|
|
#[derive(Clone, Default, Debug, PartialEq, Eq)]
|
|
pub struct OperatingSystem {
|
|
kind: Kind,
|
|
packager: Packager,
|
|
}
|
|
|
|
impl OperatingSystem {
|
|
pub const fn kind(&self) -> &Kind {
|
|
&self.kind
|
|
}
|
|
|
|
pub const fn packager(&self) -> &Packager {
|
|
&self.packager
|
|
}
|
|
|
|
pub const fn new(kind: Kind, packager: Packager) -> OperatingSystem {
|
|
OperatingSystem { kind, packager }
|
|
}
|
|
|
|
pub const fn unknown() -> OperatingSystem {
|
|
OperatingSystem {
|
|
kind: Kind::Unknown,
|
|
packager: Packager::Unknown,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[derive(Default, Debug, Clone, Eq, PartialEq)]
|
|
pub enum Kind {
|
|
#[default]
|
|
Unknown,
|
|
Debian,
|
|
}
|