package core:sys/kqueue
Warning: This was generated for -target:darwin_arm64 and might not represent every target this package supports.
⌘K
Ctrl+K
or
/
Index
Variables (0)
This section is empty.
Procedure Groups (0)
This section is empty.
Types
Filter ¶
Filter :: enum _Filter_Backing { Read = _FILTER_READ, // Check for read availability on the file descriptor. Write = _FILTER_WRITE, // Check for write availability on the file descriptor. AIO = _FILTER_AIO, // Attached to AIO requests. VNode = _FILTER_VNODE, // Check for changes to the subject file. Proc = _FILTER_PROC, // Check for changes to the subject process. Signal = _FILTER_SIGNAL, // Check for signals delivered to the process. Timer = _FILTER_TIMER, // Timers. User = _FILTER_USER, // User events. }
Flag ¶
Flag :: enum _Flags_Backing { Add = log2(0x0001), // Add event to kq (implies .Enable). Delete = log2(0x0002), // Delete event from kq. Enable = log2(0x0004), // Enable event. Disable = log2(0x0008), // Disable event (not reported). One_Shot = log2(0x0010), // Only report one occurrence. Clear = log2(0x0020), // Clear event state after reporting. Receipt = log2(0x0040), // Force immediate event output. Dispatch = log2(0x0080), // Disable event after reporting. Error = log2(0x4000), // Error, data contains errno. EOF = log2(0x8000), // EOF detected. }
Flags ¶
Flags :: bit_set[Flag; _Flags_Backing]
KEvent ¶
KEvent :: struct #align (4) { // Value used to identify this event. The exact interpretation is determined by the attached filter. ident: uintptr, // Filter for event. filter: Filter, // General flags. flags: bit_set[Flag; _Flags_Backing], // Filter specific flags. fflags: struct #raw_union { rw: bit_set[RW_Flag; u32] `raw_union_tag:"filter=.Read, filter=.Write"`, vnode: bit_set[VNode_Flag; u32] `raw_union_tag:"filter=.VNode"`, fproc: bit_set[Proc_Flag; u32] `raw_union_tag:"filter=.Proc"`, // vm: VM_Flags, timer: bit_set[Timer_Flag; u32] `raw_union_tag:"filter=.Timer"`, user: bit_set[User_Flag; u32] `raw_union_tag:"filter=.User"`, }, // Filter specific data. data: i64, // Opaque user data passed through the kernel unchanged. udata: rawptr, }
Proc_Flag ¶
Proc_Flag :: enum u32 { Exit = log2(0x80000000), // Process exited. Fork = log2(0x40000000), // Process forked. Exec = log2(0x20000000), // Process exec'd. }
Timer_Flag ¶
Timer_Flag :: enum u32 { Seconds = log2(0x00000001), // Data is seconds. USeconds = log2(_NOTE_USECONDS), // Data is microseconds. Absolute = log2(_NOTE_ABSOLUTE), // Absolute timeout. }
User_Flag ¶
User_Flag :: enum u32 { Trigger = log2(0x01000000), FFAnd = log2(0x40000000), FFOr = log2(0x80000000), }
User_Flags ¶
Related Constants
VNode_Flag ¶
VNode_Flag :: enum u32 { Delete = log2(0x00000001), // Deleted. Write = log2(0x00000002), // Contents changed. Extend = log2(0x00000004), // Size increased. Attrib = log2(0x00000008), // Attributes changed. Link = log2(0x00000010), // Link count changed. Rename = log2(0x00000020), // Renamed. Revoke = log2(0x00000040), // Access was revoked. }
VNode_Flags ¶
VNode_Flags :: bit_set[VNode_Flag; u32]
Constants
TIMER_FLAGS_NSECONDS ¶
TIMER_FLAGS_NSECONDS: bit_set[Timer_Flag; u32] : _TIMER_FLAGS_NSECONDS
Data is nanoseconds.
Variables
This section is empty.
Procedures
Procedure Groups
This section is empty.
Source Files
Generation Information
Generated with odin version dev-2026-09 (vendor "odin") Windows_amd64 @ 2026-09-08 15:54:50.713275100 +0000 UTC