pub struct WorkspaceIndex { /* private fields */ }Implementations§
Source§impl WorkspaceIndex
impl WorkspaceIndex
Sourcepub fn new(workspace_root: &Path, db_path: Option<&Path>) -> Result<Self>
pub fn new(workspace_root: &Path, db_path: Option<&Path>) -> Result<Self>
Create or open a workspace index.
If db_path is provided, the database is created at that exact path.
Otherwise, the database is stored in the user data directory
(~/.local/share/language-check/dbs/ on Linux,
~/Library/Application Support/language-check/dbs/ on macOS,
%APPDATA%/language-check/dbs/ on Windows),
named by a hash of the workspace root to avoid collisions.
pub fn get_root_path(&self) -> Option<&Path>
Sourcepub fn is_file_unchanged(&self, file_path: &str, content: &str) -> bool
pub fn is_file_unchanged(&self, file_path: &str, content: &str) -> bool
Check if a file’s content has changed since last indexing. Returns true if unchanged (cache hit), false if changed or new.
Sourcepub fn update_file_hash(&self, file_path: &str, content: &str) -> Result<()>
pub fn update_file_hash(&self, file_path: &str, content: &str) -> Result<()>
Store the content hash for a file after indexing.
pub fn update_insights( &self, file_path: &str, insights: &ProseInsights, ) -> Result<()>
pub fn get_insights(&self, file_path: &str) -> Result<Option<ProseInsights>>
Sourcepub fn cached_check(
&self,
file_path: &str,
fingerprint: u64,
) -> Option<Vec<Diagnostic>>
pub fn cached_check( &self, file_path: &str, fingerprint: u64, ) -> Option<Vec<Diagnostic>>
The stored result for file_path, if it still applies.
A fingerprint mismatch is a miss, and so is anything unreadable: an index written by an older version holds a different shape, and failing a check because of it would be worse than doing the work again.
Sourcepub fn store_check(
&self,
file_path: &str,
fingerprint: u64,
diagnostics: &[Diagnostic],
) -> Result<()>
pub fn store_check( &self, file_path: &str, fingerprint: u64, diagnostics: &[Diagnostic], ) -> Result<()>
Record a check’s result together with what produced it.
Auto Trait Implementations§
impl !RefUnwindSafe for WorkspaceIndex
impl !UnwindSafe for WorkspaceIndex
impl Freeze for WorkspaceIndex
impl Send for WorkspaceIndex
impl Sync for WorkspaceIndex
impl Unpin for WorkspaceIndex
impl UnsafeUnpin for WorkspaceIndex
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
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
self file descriptor. Read moreSource§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