pub enum FilesystemChange {
Created {
inode_id: InodeId,
inode_kind: InodeKind,
parent_inode_id: InodeId,
name: DisplayName,
revision_no: Option<RevisionNo>,
content_ref: Option<ContentRef>,
},
ContentChanged {
inode_id: InodeId,
revision_no: RevisionNo,
content_ref: ContentRef,
},
Moved {
inode_id: InodeId,
from_parent_inode_id: InodeId,
from_name: DisplayName,
to_parent_inode_id: InodeId,
to_name: DisplayName,
},
Deleted {
inode_id: InodeId,
parent_inode_id: Option<InodeId>,
name: Option<DisplayName>,
},
Undeleted {
inode_id: InodeId,
parent_inode_id: InodeId,
name: DisplayName,
},
}Expand description
One semantic filesystem change inside a commit.
Each event corresponds to one operation of the committed request, in request order. Events name inodes and their parent-directory bindings rather than full paths; a consumer that needs paths can stat the inode or maintain its own binding projection from this feed.
Variants§
Created
A file or directory was created.
Fields
name: DisplayNameUser-facing spelling of the new entry.
revision_no: Option<RevisionNo>First revision number, for file creations.
content_ref: Option<ContentRef>Content of the first revision, for file creations.
ContentChanged
A file received a new current revision — a put over an existing file, or a revision restore (one durable fact for both).
Fields
revision_no: RevisionNoNew monotonic position in that file’s revision history.
content_ref: ContentRefImmutable content published by the revision.
Moved
An inode moved to a new parent directory or name.
Fields
from_name: DisplayNameSpelling of the old binding.
to_name: DisplayNameSpelling of the new binding.
Deleted
A file or directory subtree was deleted. The enclosing change’s
seq is the deletion generation an undelete request passes as
deleted_at_seq.
Fields
parent_inode_id: Option<InodeId>Directory that held the deleted binding, when the delete recorded one.
name: Option<DisplayName>Spelling of the deleted binding, when the delete recorded one.
Undeleted
A deleted inode was recovered and re-bound.
Trait Implementations§
Source§impl Clone for FilesystemChange
impl Clone for FilesystemChange
Source§fn clone(&self) -> FilesystemChange
fn clone(&self) -> FilesystemChange
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more