Crate tvix_castore
source ·Modules§
- The composition module allows composing different kinds of services based on a set of service configurations at runtime.
- digests 🔒
- errors 🔒
- The main library function here is ingest_entries, receiving a stream of IngestionEntry.
- nodes 🔒This holds types describing nodes in the tvix-castore model.
- path 🔒Contains data structures to deal with Paths in the tvix-castore model.
- Simple scanner for non-overlapping, known references of Nix store paths in a given string.
Structs§
- 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:
- Wraps an existing AsyncRead, and allows querying for the digest of all data read “through” it. The hash function is configurable by type parameter.
- 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.
- 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.
- 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).
- A wrapper type for symlink targets. Internally uses a bytes::Bytes, but disallows empty targets and those containing null bytes.
Enums§
- Errors that can occur when populating crate::Directory messages, or parsing crate::proto::Directory
- Errors related to communication with the store.
- A Node is either a [DirectoryNode], [FileNode] or [SymlinkNode]. Nodes themselves don’t have names, what gives them names is either them being inside a Directory, or a root node with its own name attached to it.
- Errors created when parsing / validating PathComponent.
- Errors created when constructing / converting to SymlinkTarget.
- Errors that occur during construction of crate::Node