https://github.com/sile/fibers_inotify
A futures friendly inotify wrapper for fibers crate
https://github.com/sile/fibers_inotify
inotify rust
Last synced: 6 months ago
JSON representation
A futures friendly inotify wrapper for fibers crate
- Host: GitHub
- URL: https://github.com/sile/fibers_inotify
- Owner: sile
- License: mit
- Created: 2018-01-09T13:23:24.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-12-20T00:37:18.000Z (almost 3 years ago)
- Last Synced: 2025-03-25T07:12:43.655Z (6 months ago)
- Topics: inotify, rust
- Language: Rust
- Homepage:
- Size: 20.5 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
fibers_inotify
==============[](https://crates.io/crates/fibers_inotify)
[](https://docs.rs/fibers_inotify)
[](https://travis-ci.org/sile/fibers_inotify)
[](https://codecov.io/gh/sile/fibers_inotify/branch/master)
[](LICENSE)A [futures] friendly [inotify] wrapper for [fibers] crate.
[Documentation](https://docs.rs/fibers_inotify).
[futures]: https://crates.io/crates/futures
[fibers]: https://crates.io/crates/fibers
[inotify]: https://en.wikipedia.org/wiki/InotifyExamples
---------Watches `/tmp` directory:
```rust
use fibers::{Executor, InPlaceExecutor, Spawn};
use fibers_inotify::{InotifyService, WatchMask};
use futures::{Future, Stream};let inotify_service = InotifyService::new();
let inotify_handle = inotify_service.handle();let mut executor = InPlaceExecutor::new().unwrap();
executor.spawn(inotify_service.map_err(|e| panic!("{}", e)));let fiber = executor.spawn_monitor(
inotify_handle
.watch("/tmp/", WatchMask::CREATE | WatchMask::DELETE)
.for_each(|event| Ok(println!("# EVENT: {:?}", event)))
.map_err(|e| panic!("{}", e)),
);let _ = executor.run_fiber(fiber).unwrap();
```