Skip to content

Commit 0637d07

Browse files
committed
Import from fsevent_sys directly
1 parent 3128679 commit 0637d07

File tree

1 file changed

+25
-23
lines changed

1 file changed

+25
-23
lines changed

src/lib.rs

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,13 @@ use core_foundation::{
1616
},
1717
string::CFString,
1818
};
19-
use fsevent_sys as fs;
19+
use fsevent_sys::{
20+
kFSEventStreamCreateFlagFileEvents, kFSEventStreamCreateFlagNoDefer,
21+
kFSEventStreamEventIdSinceNow, FSEventStreamContext, FSEventStreamCreate,
22+
FSEventStreamCreateFlags, FSEventStreamEventFlags, FSEventStreamEventId,
23+
FSEventStreamFlushSync, FSEventStreamRef, FSEventStreamScheduleWithRunLoop, FSEventStreamStart,
24+
FSEventStreamStop,
25+
};
2026
use std::{
2127
ffi::CStr,
2228
fmt::{Display, Formatter},
@@ -35,9 +41,9 @@ unsafe impl Send for CFRunLoopSendWrapper {}
3541

3642
pub struct FsEvent {
3743
paths: Vec<String>,
38-
since_when: fs::FSEventStreamEventId,
44+
since_when: FSEventStreamEventId,
3945
latency: CFTimeInterval,
40-
flags: fs::FSEventStreamCreateFlags,
46+
flags: FSEventStreamCreateFlags,
4147
runloop: Option<CFRunLoopRef>,
4248
}
4349

@@ -155,9 +161,9 @@ impl Display for StreamFlags {
155161
}
156162
}
157163

158-
fn default_stream_context(event_sender: *const Sender<Event>) -> fs::FSEventStreamContext {
164+
fn default_stream_context(event_sender: *const Sender<Event>) -> FSEventStreamContext {
159165
let ptr = event_sender as *mut c_void;
160-
fs::FSEventStreamContext {
166+
FSEventStreamContext {
161167
version: 0,
162168
info: ptr,
163169
retain: None,
@@ -189,9 +195,9 @@ impl FsEvent {
189195
pub fn new(paths: Vec<String>) -> Self {
190196
Self {
191197
paths,
192-
since_when: fs::kFSEventStreamEventIdSinceNow,
198+
since_when: kFSEventStreamEventIdSinceNow,
193199
latency: 0.0,
194-
flags: fs::kFSEventStreamCreateFlagFileEvents | fs::kFSEventStreamCreateFlagNoDefer,
200+
flags: kFSEventStreamCreateFlagFileEvents | kFSEventStreamCreateFlagNoDefer,
195201
runloop: None,
196202
}
197203
}
@@ -208,17 +214,17 @@ impl FsEvent {
208214
}
209215

210216
fn internal_observe(
211-
since_when: fs::FSEventStreamEventId,
217+
since_when: FSEventStreamEventId,
212218
latency: CFTimeInterval,
213-
flags: fs::FSEventStreamCreateFlags,
219+
flags: FSEventStreamCreateFlags,
214220
paths: CFArray<CFString>,
215221
event_sender: Sender<Event>,
216222
runloop_sender: Option<Sender<CFRunLoopSendWrapper>>,
217223
) -> Result<()> {
218224
let stream_context = default_stream_context(&event_sender);
219225

220226
unsafe {
221-
let stream = fs::FSEventStreamCreate(
227+
let stream = FSEventStreamCreate(
222228
kCFAllocatorDefault,
223229
callback,
224230
&stream_context,
@@ -233,17 +239,13 @@ impl FsEvent {
233239
ret_tx.send(runloop).expect("unabe to send CFRunLoopRef");
234240
}
235241

236-
fs::FSEventStreamScheduleWithRunLoop(
237-
stream,
238-
CFRunLoopGetCurrent(),
239-
kCFRunLoopDefaultMode,
240-
);
242+
FSEventStreamScheduleWithRunLoop(stream, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);
241243

242-
fs::FSEventStreamStart(stream);
244+
FSEventStreamStart(stream);
243245
CFRunLoopRun();
244246

245-
fs::FSEventStreamFlushSync(stream);
246-
fs::FSEventStreamStop(stream);
247+
FSEventStreamFlushSync(stream);
248+
FSEventStreamStop(stream);
247249
}
248250

249251
Ok(())
@@ -304,12 +306,12 @@ impl FsEvent {
304306
}
305307

306308
extern "C" fn callback(
307-
_stream_ref: fs::FSEventStreamRef,
309+
_stream_ref: FSEventStreamRef,
308310
info: *mut c_void,
309-
num_events: usize, // size_t numEvents
310-
event_paths: *mut c_void, // void *eventPaths
311-
event_flags: *const fs::FSEventStreamEventFlags, // const FSEventStreamEventFlags eventFlags[]
312-
event_ids: *const fs::FSEventStreamEventId, // const FSEventStreamEventId eventIds[]
311+
num_events: usize, // size_t numEvents
312+
event_paths: *mut c_void, // void *eventPaths
313+
event_flags: *const FSEventStreamEventFlags, // const FSEventStreamEventFlags eventFlags[]
314+
event_ids: *const FSEventStreamEventId, // const FSEventStreamEventId eventIds[]
313315
) {
314316
let event_paths = unsafe { slice::from_raw_parts(event_paths as *const *const i8, num_events) };
315317
let event_flags = unsafe { slice::from_raw_parts(event_flags, num_events) };

0 commit comments

Comments
 (0)