Struct nix::sys::inotify::Inotify

pub struct Inotify { /* fields hidden */ }
Documentation

An inotify instance. This is also a file descriptor, you can feed it to other interfaces consuming file descriptors, epoll for example.

Implementations

impl Inotify
pub fn init(flags: InitFlags) -> Result<Inotify>

Initialize a new inotify instance.

Returns a Result containing an inotify instance.

For more information see, inotify_init(2).

pub fn add_watch<P: ?Sized + NixPath>(
    Self,
    path: &P,
    mask: AddWatchFlags
) -> Result<WatchDescriptor>

Adds a new watch on the target file or directory.

Returns a watch descriptor. This is not a File Descriptor!

For more information see, inotify_add_watch(2).

pub fn rm_watch(Self, wd: WatchDescriptor) -> Result<()>

Removes an existing watch using the watch descriptor returned by inotify_add_watch.

Returns an EINVAL error if the watch descriptor is invalid.

For more information see, inotify_rm_watch(2).

pub fn read_events(Self) -> Result<Vec<InotifyEvent>>

Reads a collection of events from the inotify file descriptor. This call can either be blocking or non blocking depending on whether IN_NONBLOCK was set at initialization.

Returns as many events as available. If the call was non blocking and no events could be read then the EAGAIN error is returned.

Trait Implementations

impl AsRawFd for Inotify
fn as_raw_fd(&Self) -> RawFd
impl Clone for Inotify
fn clone(&Self) -> Inotify
impl Copy for Inotify
impl Debug for Inotify
fn fmt(&Self, f: &mut $crate::fmt::Formatter<'_>) -> $crate::fmt::Result
impl FromRawFd for Inotify
unsafe fn from_raw_fd(fd: RawFd) -> Self

Auto Trait Implementations

impl Send for Inotify
impl Sync for Inotify
impl Unpin for Inotify
impl UnwindSafe for Inotify

Blanket Implementations

impl<T> Any for T
where
    T: 'static + ?Sized,
fn type_id(&Self) -> TypeId
impl<T> Borrow<T> for T
where
    T: ?Sized,
fn borrow(&Self) -> &T
impl<T> BorrowMut<T> for T
where
    T: ?Sized,
fn borrow_mut(&mut Self) -> &mut T
impl<T> From<T> for T
fn from(t: T) -> T

Returns the argument unchanged.

impl<T, U> Into<U> for T
where
    U: From<T>,
fn into(Self) -> U

Calls U::from(self).

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

impl<T> ToOwned for T
where
    T: Clone,
type Owned = T
fn to_owned(&Self) -> T
fn clone_into(&Self, target: &mut T)
impl<T, U> TryFrom<U> for T
where
    U: Into<T>,
type Error = Infallible
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto<U> for T
where
    U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn try_into(Self) -> Result<U, <U as TryFrom<T>>::Error>