Expand description
Stable, transport-independent filesystem domain primitives.
This crate defines the canonical FileSystem trait and the domain
types every implementation shares: absolute, normalized VirtualPaths,
strongly typed identifiers and revisions, stable machine-readable
ErrorCodes, and the request/response shapes for every operation. It
contains no SQL, no HTTP, and no host filesystem paths — see the
fslite-sqlite crate for a persistent, embeddable implementation.
use fslite_core::VirtualPath;
let path = VirtualPath::parse("/a/../a/b")?;
assert_eq!(path.as_str(), "/a/b");Structs§
- Byte
Range - An inclusive-start, exclusive-end logical byte range.
- Change
- One committed, workspace-scoped filesystem change.
- Change
Cursor - An opaque continuation cursor for the workspace change feed.
- Content
Query - A bounded literal content-search request.
- Copy
Options - Options controlling a copy operation.
- Create
Options - Options controlling directory and symbolic-link creation.
- File
Read - Metadata accompanying a streamed file read.
- Find
Query - Metadata predicates for workspace-scoped node discovery.
- FsError
- A filesystem error with a stable code, human-readable message, and safe details.
- Link
Target - A normalized absolute or relative target stored by a symbolic link.
- Move
Options - Options controlling a move operation.
- Mutation
Options - Common options for a mutation with no additional controls.
- Node
- Transport-independent metadata for a filesystem node.
- NodeId
- Identifies a filesystem node within a workspace.
- Page
- One page of results and an optional continuation cursor.
- Page
Request - Cursor pagination parameters shared by listing and discovery operations.
- Read
Options - Options controlling a streamed file read.
- Remove
Options - Options controlling permanent removal.
- Request
Context - Transport-independent authorization and audit context for an operation.
- Revision
- A positive, monotonically increasing node revision.
- Search
Match - One literal content-search match.
- Stat
Options - Options controlling node metadata lookup.
- Touch
Options - Options controlling a file touch operation.
- Trash
Entry - Metadata for a recoverable trashed subtree.
- TrashId
- Identifies a recoverable trash record.
- Tree
Entry - One entry in a recursive tree traversal.
- Tree
Options - Options controlling recursive tree traversal.
- Virtual
Path - An absolute, normalized path within a filesystem workspace.
- Workspace
Id - Identifies an isolated filesystem workspace.
- Workspace
Usage - Logical and quota usage for one workspace.
- Write
Options - Options controlling a streamed file write.
- Write
Source - A source of byte chunks consumed by a streamed write.
Enums§
- Batch
Operation - A metadata or namespace operation that may participate in an atomic batch.
- Batch
Result - The result of one successful atomic batch member.
- Capability
- A caller capability enforced within one workspace.
- Change
Kind - The stable category of a committed filesystem change.
- Error
Code - A stable, transport-independent category for filesystem failures.
- Node
Kind - The type of a filesystem node.
Constants§
- DEFAULT_
PAGE_ LIMIT - The default maximum number of items requested in a page.
Traits§
- File
System - Canonical asynchronous filesystem behavior shared by all backends.
Type Aliases§
- Byte
Stream - A pinned asynchronous stream of filesystem byte chunks.
- FsResult
- The result type used by filesystem domain operations.