Crate memofs[−][src]
Expand description
Implementation of a virtual filesystem with a configurable backend and file watching.
memofs is currently an unstable minimum viable library. Its primary consumer is Rojo, a build system for Roblox.
Current Features
- API similar to
std::fs
- Configurable backends
StdBackend
, which usesstd::fs
and thenotify
crateNoopBackend
, which always throws errorsInMemoryFs
, a simple in-memory filesystem useful for testing
Future Features
- Hash-based hierarchical memoization keys (hence the name)
- Configurable caching (write-through, write-around, write-back)
Structs
Vfs equivalent to std::fs::DirEntry
.
In-memory filesystem that can be used as a VFS backend.
Vfs equivalent to std::fs::Metadata
.
VfsBackend
that returns an error on every operation.
Vfs equivalent to std::fs::ReadDir
.
VfsBackend
that uses std::fs
and the notify
crate.
A virtual filesystem with a configurable backend.
A locked handle to a Vfs
, created by Vfs::lock
.
Enums
Represents an event that a filesystem can raise that might need to be handled.
A slice of a tree of files. Can be loaded into an
InMemoryFs
.
Traits
Trait that transforms io::Result<T>
into io::Result<Option<T>>
.
Backend that can be used to create a Vfs
.