here[1] you can get a simple VFS system (yep, another one!). it introduces `VFile` struct (kinda like `std.stdio.File`, but with less features), which can wrap your own custom streams, `std.stdio.File`, libc `FILE*`, integer file descriptor... actually, anything you'll do a simple wrapper for. it's designed in the spirit of `fopencookie()`.

also it includes VFS features like "pak file registration", and built-in ZIP reader.


ZIP reader doesn't use `std.zip`, and doesn't unpack the whole file in memory. it is even possible to register ZIP inside ZIP as "pak" file! ;-)

also, it has functions to read and write numbers of various sizes in both endiannesses.

VFile i/o is thread-safe (but not VFile itself!)

works with DMD 2.070+

GNU GPL. i wanted you to read the whole text to find this, yeah.


1. http://repo.or.cz/iv.d.git/tree/HEAD:/vfs

Reply via email to