xdvdfs-core

xdvdfs-core is a library for working with XDVDFS metadata.

A simple example reading a file from a given path is:

```rust fn readfrompath(xiso: &Path, filepath: &str) -> Box<[u8]> { let mut xiso = std::fs::File::open(xiso).unwrap(); let volume = xdvdfs::read::readvolume(&mut xiso).unwrap();

let file_dirent = volume.root_table.walk_path(&mut xiso, file_path).unwrap();

let data = file_dirent.node.dirent.read_data_all(&mut xiso);
data

} ```

This library supports no_std. Custom block devices can be defined by implementing the traits in xdvdfs::blockdev.

Without the alloc feature, only basic metadata features are supported. The alloc feature enables several utility functions that require allocation (such as read_data_all above.