Skip to main content

Watcher

Struct Watcher 

Source
pub struct Watcher(/* private fields */);
Expand description

An filesystem watcher

When this object is dropped the background task associated with it will stop. You may still receive some events on your provided event handler even after this, you can safely ignore them, or drop the handler.

If your provided event handler returns an error, the background task associated with this object will stop. From then on all the methods of this object will fail.

Implementations§

Source§

impl Watcher

Source

pub fn add( &self, path: ArcPath, interest: BitFlags<Interest>, ) -> Result<Watched>

Add a new watch

Fails if the watcher task has died. Other errors will be sent as events.

The watch ends when the returned Watched is dropped. However it cannot be guaranteed that no events will happen for a watch after it has been dropped. You can handle this by ignoring events with an unknown Id.

Source

pub fn set_poll_interval(&self, t: Duration) -> Result<()>

Set the poll interval

The poll interval determines how often to poll a batch of files. Polling is necessary to cover cases that filesystem notifications can’t handle, such as watching a path that doesn’t yet exist. Each poll interval, poll batch files will be checked in parallel.

The minimum poll interval is 100ms, an error will be returned if you try to set the value lower than that.

Source

pub fn set_poll_batch(&self, n: usize) -> Result<()>

Set the size of a poll batch

How many files to poll each poll interval. If this is set to 0 polling is disabled.

Trait Implementations§

Source§

impl Clone for Watcher

Source§

fn clone(&self) -> Watcher

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Watcher

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.