Crate snix_castore

Source

ModulesΒ§

blobservice
composition
The composition module allows composing different kinds of services based on a set of service configurations at runtime.
digests πŸ”’
directoryservice
errors πŸ”’
fixtures
fs
hashing_reader πŸ”’
import
The main library function here is ingest_entries, receiving a stream of IngestionEntry.
nodes πŸ”’
This holds types describing nodes in the snix-castore model.
path πŸ”’
Contains data structures to deal with Paths in the snix-castore model.
proto
refscan
Simple scanner for non-overlapping, known references of Nix store paths in a given string.
tonic
utils

StructsΒ§

B3Digest
Directory
A Directory contains nodes, which can be Directory, File or Symlink nodes. It attaches names to these nodes, which is the basename in that directory. These names:
HashingReader
Wraps an existing AsyncRead, and allows querying for the digest of all data read β€œthrough” it. The hash function is configurable by type parameter.
Path
Represents a Path in the castore model. These are always relative, and platform-independent, which distinguishes them from the ones provided in the standard library.
PathBuf
Represents a owned PathBuf in the castore model. These are always relative, and platform-independent, which distinguishes them from the ones provided in the standard library.
PathComponent
A wrapper type for validated path components in the castore model. Internally uses a bytes::Bytes, but disallows slashes, and null bytes to be present, as well as β€˜.’, β€˜..’ and the empty string. It also rejects components that are too long (> 255 bytes).
SymlinkTarget
A wrapper type for symlink targets. Internally uses a bytes::Bytes, but disallows empty targets and those containing null bytes.

EnumsΒ§

DirectoryError
Errors that can occur when populating crate::Directory messages, or parsing crate::proto::Directory
Error
Errors related to communication with the store.
Node
A Node is either a directory, file or symlink. Nodes themselves don’t have names, what gives them names is either them being inside a Directory, or a root node with a name attached adjacently.
PathComponentError
Errors created when parsing / validating PathComponent.
SymlinkTargetError
Errors created when constructing / converting to SymlinkTarget.
ValidateNodeError
Errors that occur during construction of crate::Node

ConstantsΒ§

USER_AGENT πŸ”’

Type AliasesΒ§

B3HashingReader