[−][src]Module gvfs::vfs
A virtual file system layer that lets us define multiple "file systems" with various backing stores, then merge them together.
Basically a re-implementation of the C library PhysFS
. The
vfs
crate does something similar but has a couple design
decisions that make it kind of incompatible with this use case:
the relevant trait for it has generic methods so we can't use it
as a trait object, and its path abstraction is not the most
convenient.
Structs
OpenOptions | Options for opening files |
OverlayFS | A structure that joins several VFS's together in order. |
PhysicalFS | A VFS that points to a directory and uses it as the root of its file hierarchy. |
PhysicalMetadata | Metadata for a physical file. |
ZipFS | A filesystem backed by a zip file. |
ZipFileWrapper | A wrapper to contain a zipfile so we can implement (janky) Seek on it and such. |
Traits
VFS | A trait for a virtual file system, such as a zip file or a point in the real file system. |
VFile | Our basic trait for files. All different types of filesystem must provide a thing that implements this trait. |
VMetadata | The metadata we can read from a file. |