pub struct Config { /* private fields */ }
Expand description
Watcher Backend configuration
This contains multiple settings that may relate to only one specific backend, such as to correctly configure each backend regardless of what is selected during runtime.
let config = Config::default()
.with_poll_interval(Duration::from_secs(2))
.with_compare_contents(true);
Some options can be changed during runtime, others have to be set when creating the watcher backend.
Implementations§
source§impl Config
impl Config
sourcepub fn with_poll_interval(self, dur: Duration) -> Self
pub fn with_poll_interval(self, dur: Duration) -> Self
For the PollWatcher backend.
Interval between each re-scan attempt. This can be extremely expensive for large file trees so it is recommended to measure and tune accordingly.
The default poll frequency is 30 seconds.
This will enable automatic polling, overwriting with_manual_polling.
sourcepub fn poll_interval(&self) -> Duration
👎Deprecated since 6.1.0: use poll_interval_v2 to account for disabled automatic polling
pub fn poll_interval(&self) -> Duration
Returns current setting
sourcepub fn poll_interval_v2(&self) -> Option<Duration>
pub fn poll_interval_v2(&self) -> Option<Duration>
Returns current setting
sourcepub fn with_manual_polling(self) -> Self
pub fn with_manual_polling(self) -> Self
For the PollWatcher backend.
Disable automatic polling. Requires calling crate::PollWatcher::poll manually.
This will disable automatic polling, overwriting with_poll_interval.
sourcepub fn with_compare_contents(self, compare_contents: bool) -> Self
pub fn with_compare_contents(self, compare_contents: bool) -> Self
For the PollWatcher backend.
Optional feature that will evaluate the contents of changed files to determine if
they have indeed changed using a fast hashing algorithm. This is especially important
for pseudo filesystems like those on Linux under /sys and /proc which are not obligated
to respect any other filesystem norms such as modification timestamps, file sizes, etc.
By enabling this feature, performance will be significantly impacted as all files will
need to be read and hashed at each poll_interval
.
This can’t be changed during runtime. Off by default.
sourcepub fn compare_contents(&self) -> bool
pub fn compare_contents(&self) -> bool
Returns current setting
Trait Implementations§
impl Copy for Config
impl Eq for Config
impl StructuralPartialEq for Config
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)