Commit 3ba451778f
Changed files (1)
std
std/event.zig
@@ -136,10 +136,7 @@ pub const Loop = struct {
};
pub const EventFd = switch (builtin.os) {
- builtin.Os.macosx => struct {
- base: ResumeNode,
- kevent: posix.Kevent,
- },
+ builtin.Os.macosx => MacOsEventFd,
builtin.Os.linux => struct {
base: ResumeNode,
epoll_op: u32,
@@ -147,6 +144,11 @@ pub const Loop = struct {
},
else => @compileError("unsupported OS"),
};
+
+ const MacOsEventFd = struct {
+ base: ResumeNode,
+ kevent: posix.Kevent,
+ };
};
/// After initialization, call run().
@@ -276,10 +278,10 @@ pub const Loop = struct {
.handle = undefined,
},
// this one is for sending events
- .kevent = posix.Kevent {
+ .kevent = posix.Kevent{
.ident = i,
.filter = posix.EVFILT_USER,
- .flags = posix.EV_CLEAR|posix.EV_ADD|posix.EV_DISABLE,
+ .flags = posix.EV_CLEAR | posix.EV_ADD | posix.EV_DISABLE,
.fflags = 0,
.data = 0,
.udata = @ptrToInt(&eventfd_node.data.base),
@@ -290,10 +292,10 @@ pub const Loop = struct {
self.available_eventfd_resume_nodes.push(eventfd_node);
const kevent_array = (*[1]posix.Kevent)(&eventfd_node.data.kevent);
_ = try std.os.bsdKEvent(self.os_data.kqfd, kevent_array, eventlist, null);
- eventfd_node.data.kevent.flags = posix.EV_CLEAR|posix.EV_ENABLE;
+ eventfd_node.data.kevent.flags = posix.EV_CLEAR | posix.EV_ENABLE;
eventfd_node.data.kevent.fflags = posix.NOTE_TRIGGER;
// this one is for waiting for events
- self.os_data.kevents[i] = posix.Kevent {
+ self.os_data.kevents[i] = posix.Kevent{
.ident = i,
.filter = posix.EVFILT_USER,
.flags = 0,
@@ -542,13 +544,15 @@ pub const Loop = struct {
final_eventfd: i32,
final_eventfd_event: std.os.linux.epoll_event,
},
- builtin.Os.macosx => struct {
- kqfd: i32,
- final_kevent: posix.Kevent,
- kevents: []posix.Kevent,
- },
+ builtin.Os.macosx => MacOsData,
else => struct {},
};
+
+ const MacOsData = struct {
+ kqfd: i32,
+ final_kevent: posix.Kevent,
+ kevents: posix.Kevent,
+ };
};
/// many producer, many consumer, thread-safe, lock-free, runtime configurable buffer size