pub struct LocalWorkspaceManifest { /* private fields */ }Expand description
Shared in-memory workspace manifest.
Implementations§
Source§impl LocalWorkspaceManifest
impl LocalWorkspaceManifest
Sourcepub fn start(root: impl Into<PathBuf>) -> Arc<Self> ⓘ
pub fn start(root: impl Into<PathBuf>) -> Arc<Self> ⓘ
Start the manifest scanner/watcher for root.
pub fn snapshot(&self) -> LocalWorkspaceManifestSnapshot
pub fn subscribe(&self) -> Receiver<LocalWorkspaceManifestSnapshot>
Sourcepub fn subscribe_changes(&self) -> Receiver<WorkspaceFileChange>
pub fn subscribe_changes(&self) -> Receiver<WorkspaceFileChange>
Subscribe to debounced, workspace-relative filesystem changes.
Sourcepub fn shutdown(&self)
pub fn shutdown(&self)
Stop background discovery without waiting for an in-flight synchronous scan.
Hosts with an explicit lifecycle should call this before shutting down
their Tokio runtime. Drop is only a fallback because other background
services may retain an Arc to the manifest until runtime teardown.
Sourcepub fn touch_file(&self, path: impl AsRef<str>) -> bool
pub fn touch_file(&self, path: impl AsRef<str>) -> bool
Record that a workspace-relative file was opened, read, or written.
This intentionally does not require the initial manifest scan to have completed. The public recent-file views filter against the current manifest index, so early touches become visible after the file is indexed and deleted files disappear automatically.
Sourcepub fn recent_file_entries(&self, limit: usize) -> Vec<RecentWorkspaceFile>
pub fn recent_file_entries(&self, limit: usize) -> Vec<RecentWorkspaceFile>
Return the hottest known files, newest/frequently used first.
Sourcepub fn recent_file_paths(&self, limit: usize) -> Vec<String>
pub fn recent_file_paths(&self, limit: usize) -> Vec<String>
Return recent file paths only, preserving hot-file order.
Trait Implementations§
Source§impl Drop for LocalWorkspaceManifest
impl Drop for LocalWorkspaceManifest
Auto Trait Implementations§
impl !RefUnwindSafe for LocalWorkspaceManifest
impl !UnwindSafe for LocalWorkspaceManifest
impl Freeze for LocalWorkspaceManifest
impl Send for LocalWorkspaceManifest
impl Sync for LocalWorkspaceManifest
impl Unpin for LocalWorkspaceManifest
impl UnsafeUnpin for LocalWorkspaceManifest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more