Files
packager/api/src/main.rs
2021-09-06 09:24:04 +02:00

50 lines
1.4 KiB
Rust

#[derive(Debug)]
enum ItemUsage {
Singleton,
Once,
Periodic(i32),
}
#[derive(Debug)]
struct PackageItem {
name: String,
usage: ItemUsage
}
impl PackageItem {
fn new(name: String, usage: ItemUsage) -> PackageItem {
PackageItem{
name: name,
usage: usage,
}
}
}
struct PackageList<'a> {
name: String,
items: &'a[PackageItem],
}
fn main() {
let package_list_camping = PackageList {
name: String::from("camping"),
items: &[
PackageItem::new(String::from("Schlafsack"), ItemUsage::Singleton),
PackageItem::new(String::from("Zelt"), ItemUsage::Singleton),
PackageItem::new(String::from("Luftmatratze"), ItemUsage::Singleton),
PackageItem::new(String::from("Campingstuhl"), ItemUsage::Singleton),
PackageItem::new(String::from("Regenjacke"), ItemUsage::Singleton),
PackageItem::new(String::from("Tasse"), ItemUsage::Singleton),
PackageItem::new(String::from("Topf"), ItemUsage::Singleton),
PackageItem::new(String::from("Messer"), ItemUsage::Singleton),
PackageItem::new(String::from("Messer"), ItemUsage::Singleton),
PackageItem::new(String::from("Unterhose"), ItemUsage::Periodic(1)),
],
};
println!("Contents for package list {:?}:", package_list_camping.name);
for item in package_list_camping.items {
println!("{:?}", item);
}
}