pub struct ConfigWatcher { /* private fields */ }Expand description
Configuration watcher that monitors config files for changes and automatically reloads them when modifications are detected.
Implementations§
Source§impl ConfigWatcher
impl ConfigWatcher
Sourcepub fn new(workspace_path: PathBuf) -> Self
pub fn new(workspace_path: PathBuf) -> Self
Create a new ConfigWatcher for the given workspace.
Sourcepub async fn initialize(&mut self) -> Result<()>
pub async fn initialize(&mut self) -> Result<()>
Initialize the file watcher and load initial configuration.
§Errors
Returns an error when the initial config load fails or when the watcher cannot subscribe to config parent directories.
Sourcepub async fn load_config(&mut self) -> Result<()>
pub async fn load_config(&mut self) -> Result<()>
Load or reload configuration.
§Errors
Returns an error when internal watcher state cannot be updated.
Sourcepub async fn get_config(&mut self) -> Option<VTCodeConfig>
pub async fn get_config(&mut self) -> Option<VTCodeConfig>
Get the current configuration, reloading if the watcher detected changes.
Sourcepub async fn last_load_time(&self) -> Instant
pub async fn last_load_time(&self) -> Instant
Get the last load time for debugging.
Auto Trait Implementations§
impl Freeze for ConfigWatcher
impl RefUnwindSafe for ConfigWatcher
impl Send for ConfigWatcher
impl Sync for ConfigWatcher
impl Unpin for ConfigWatcher
impl UnsafeUnpin for ConfigWatcher
impl UnwindSafe for ConfigWatcher
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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