Skip to main content

Crate fslite_core

Crate fslite_core 

Source
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§

ByteRange
An inclusive-start, exclusive-end logical byte range.
Change
One committed, workspace-scoped filesystem change.
ChangeCursor
An opaque continuation cursor for the workspace change feed.
ContentQuery
A bounded literal content-search request.
CopyOptions
Options controlling a copy operation.
CreateOptions
Options controlling directory and symbolic-link creation.
FileRead
Metadata accompanying a streamed file read.
FindQuery
Metadata predicates for workspace-scoped node discovery.
FsError
A filesystem error with a stable code, human-readable message, and safe details.
LinkTarget
A normalized absolute or relative target stored by a symbolic link.
MoveOptions
Options controlling a move operation.
MutationOptions
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.
PageRequest
Cursor pagination parameters shared by listing and discovery operations.
ReadOptions
Options controlling a streamed file read.
RemoveOptions
Options controlling permanent removal.
RequestContext
Transport-independent authorization and audit context for an operation.
Revision
A positive, monotonically increasing node revision.
SearchMatch
One literal content-search match.
StatOptions
Options controlling node metadata lookup.
TouchOptions
Options controlling a file touch operation.
TrashEntry
Metadata for a recoverable trashed subtree.
TrashId
Identifies a recoverable trash record.
TreeEntry
One entry in a recursive tree traversal.
TreeOptions
Options controlling recursive tree traversal.
VirtualPath
An absolute, normalized path within a filesystem workspace.
WorkspaceId
Identifies an isolated filesystem workspace.
WorkspaceUsage
Logical and quota usage for one workspace.
WriteOptions
Options controlling a streamed file write.
WriteSource
A source of byte chunks consumed by a streamed write.

Enums§

BatchOperation
A metadata or namespace operation that may participate in an atomic batch.
BatchResult
The result of one successful atomic batch member.
Capability
A caller capability enforced within one workspace.
ChangeKind
The stable category of a committed filesystem change.
ErrorCode
A stable, transport-independent category for filesystem failures.
NodeKind
The type of a filesystem node.

Constants§

DEFAULT_PAGE_LIMIT
The default maximum number of items requested in a page.

Traits§

FileSystem
Canonical asynchronous filesystem behavior shared by all backends.

Type Aliases§

ByteStream
A pinned asynchronous stream of filesystem byte chunks.
FsResult
The result type used by filesystem domain operations.