50 lines
1.3 KiB
Rust
50 lines
1.3 KiB
Rust
use psxcdgen_ex::types::{iterator::{DirectoryIterator, DirectoryIteratorElement}, CDDesc, Data, Directory};
|
|
use tool_helper::Error;
|
|
|
|
fn populate() -> Result<CDDesc, Error> {
|
|
let mut desc = CDDesc::new();
|
|
let file = Data::new("Planschi.jpg")?;
|
|
let file2 = Data::new("Wuff.png")?;
|
|
let folder = {
|
|
let mut folder = Directory::new("Sub")?;
|
|
let sub_folder = {
|
|
let mut folder = Directory::new("SubSub")?;
|
|
|
|
folder.add_data(Data::new("Blubb.bin")?);
|
|
folder
|
|
};
|
|
|
|
folder.add_dir(sub_folder);
|
|
folder.add_data(Data::new("Schwimm.jpg")?);
|
|
folder.add_data(Data::new("Miau.png")?);
|
|
folder
|
|
};
|
|
|
|
desc.root.add_dir(folder);
|
|
desc.root.add_data(file);
|
|
desc.root.add_data(file2);
|
|
Ok(desc)
|
|
}
|
|
|
|
fn run_main() -> Result<(), Error> {
|
|
fn dump_dir(dir: DirectoryIterator) {
|
|
for element in dir {
|
|
match element {
|
|
DirectoryIteratorElement::Directory(dir) => println!("{}", dir),
|
|
DirectoryIteratorElement::Data(data) => println!("{}", data),
|
|
}
|
|
}
|
|
|
|
}
|
|
let desc = populate()?;
|
|
|
|
dump_dir(desc.root.iter());
|
|
Ok(())
|
|
}
|
|
|
|
fn main() {
|
|
match run_main() {
|
|
Ok(_) => println!("\n<== Planschbecken ==>"),
|
|
Err(error) => println!("{}", error)
|
|
}
|
|
} |