Expand description
Lexe’s VFS (“virtual file system”) trait and associated types. Virtual File System (‘vfs’)
Our “virtual file system” is a simple way to represent a key-value store
with optional namespacing by “directory”. You can think of the vfs as a
local directory that can contain files or directories, but where the
directories cannot contain other directories (no nesting).
Any file can be uniquely identified by its <dirname>/<filename>, and all
files exclusively contain only binary data Vec<u8>.
Singleton objects like the channel manager are stored in the global
namespace, e.g. at ./channel_manager or ./bdk_wallet_db
Growable or shrinkable collections of objects (e.g. channel monitors), are
stored in their own “directory”, e.g. channel_monitors/<funding_txo>.
Structs§
- Maybe
VfsFile - An upgradeable version of
Option<VfsFile>. - VecVfs
File - An upgradeable version of
Vec<VfsFile>. - VecVfs
File Id - An upgradeable version of
Vec<VfsFileId>. - VfsDirectory
- Uniquely identifies a directory in the virtual file system.
- VfsDirectory
List - A list of all filenames within a
VfsDirectory. - VfsFile
- Represents a file in the virtual file system. The
datafield is almost always encrypted. - VfsFile
Id - Uniquely identifies a file in the virtual file system.
Constants§
- BROADCASTED_
TXS_ DIR - CHANNEL_
MANAGER_ FILENAME - CHANNEL_
MONITORS_ ARCHIVE_ DIR - CHANNEL_
MONITORS_ DIR - EVENTS_
DIR - MIGRATIONS_
DIR - PW_
ENC_ ROOT_ SEED_ FILENAME - SINGLETON_
DIRECTORY - The vfs directory name used by singleton objects.
- UNSWEPT_
OUTPUTS_ EVENTS - UNSWEPT_
OUTPUTS_ TXS - WALLET_
CHANGESET_ LEGACY_ FILENAME - WALLET_
CHANGESET_ V2_ FILENAME
Statics§
Traits§
- Vfs
- Lexe’s async persistence interface.