Crate possum

Source

Modules§

concurrency
env
sys
Exposes required lower-level OS primitives for sparse files, block cloning, and file locking.
walk
Directory spelunking

Structs§

BatchWriter
Manages uncommitted writes
BeginWriteValue
The start of a write, before an exclusive file has been allocated. This allows for bringing your own file, such as by rename, or file clone.
Dir
FileValues
A value holding a statement temporary for starting an iterator over the Values of a value file. I couldn’t seem to get the code to work without this.
Handle
Provides access to a storage directory. Manages manifest access, file cloning, file writers, configuration, value eviction etc.
NonzeroValueLocation
Storage location info for a non-zero-length value.
ReadTransactionOwned
Helper type for wrapping rusqlite::Transaction to only provide ReadTransaction capabilities.
Snapshot
SnapshotValue
Timestamp
Transaction
Value
ValueWriter
WriteCommitResult

Enums§

Error
ValueLocation
Location data for a value. Includes the case where the value is empty and so doesn’t require allocation.

Constants§

LAST_USED_RESOLUTION
MANIFEST_DB_FILE_NAME

Traits§

FileAlreadyExistsError
ReadOnlyTransactionAccessor
Exposes a rusqlite Transaction to implement ReadTransaction.
ReadTransaction
Extra methods for types exposing a rusqlite Transaction that’s allowed to do read transaction stuff.

Functions§

ceil_multiple
Divides value by multiple, always rounding up. Very common operation for allocators.
check_hole
Checks that there’s no data allocated in the region provided.

Type Aliases§

PubResult
Type to be exposed eventually from the lib instead of anyhow. Should be useful for the C API.
ReadTransactionRef
TimestampInner