Crate nod[−][src]
Expand description
Library for traversing & reading GameCube and Wii disc images.
Based on the C++ library nod, but does not currently support authoring.
Currently supported file formats:
- ISO
- NFS (Wii U VC files, e.g.
hif_000000.nfs
)
Examples
Opening a disc image and reading a file:
use nod::disc::{new_disc_base, PartHeader};
use nod::fst::NodeType;
use nod::io::new_disc_io;
use std::io::Read;
let mut disc_io = new_disc_io("path/to/file".as_ref())?;
let disc_base = new_disc_base(disc_io.as_mut())?;
let mut partition = disc_base.get_data_partition(disc_io.as_mut())?;
let header = partition.read_header()?;
if let Some(NodeType::File(node)) = header.find_node("/MP3/Worlds.txt") {
let mut s = String::new();
partition.begin_file_stream(node)?.read_to_string(&mut s);
println!(s);
}
Modules
Disc type related logic (GameCube, Wii)
Disc file system types
Disc file format related logic (ISO, NFS, etc)
Common stream types
Macros
Creates a fixed-size array from a slice.