io_uring library
A pure-Dart, syscall-level interface to Linux io_uring.
Classes
- AcceptOp
-
IORING_OP_ACCEPT. - AsyncCancelOp
-
IORING_OP_ASYNC_CANCELtargeting auser_datavalue. - BindOp
-
IORING_OP_BIND. - CloseOp
-
IORING_OP_CLOSE. - ConnectOp
-
IORING_OP_CONNECT. - FallocateOp
-
IORING_OP_FALLOCATE. - FilesUpdateOp
-
IORING_OP_FILES_UPDATE: updates registered file descriptors. - FsyncOp
-
IORING_OP_FSYNC. - FtruncateOp
-
IORING_OP_FTRUNCATE. - IoUring
- A synchronous io_uring instance.
- IoUringAsyncLayout
- Immutable description of the CQ ring layout, shared with the reaper isolate.
- IoUringBuilder
- Fluent builder for IoUring setup flags.
- IoUringCompletion
- Immutable copy of a completion, safe to keep after the CQ slot is reused.
- IoUringCqe
-
struct io_uring_cqe(16 bytes). - IoUringCqeFlags
-
Bits in a completion queue entry's
flagsfield. - IoUringCqOffsetsView
-
Immutable copy of the CQ offsets, safe to keep after
paramsis freed. - IoUringEnterFlags
-
Flags for
io_uring_enter(2). - IoUringMultishotFlags
- Op-specific flags for poll/recv multishot requests.
- IoUringOpcode
-
IORING_OP_*values. Keep in sync withlinux/io_uring.h. - IoUringParameters
- Snapshot of the parameters a ring was created with.
- IoUringProbeResult
-
Result of
IORING_REGISTER_PROBE. - IoUringRegisterOpcode
-
io_uring_register(2)opcodes. - IoUringSetupFlags
-
Flags for
io_uring_setup(2)(io_uring_params.flags). - IoUringSqe
-
struct io_uring_sqe(64 bytes). - IoUringSqeFlags
-
Bits in a submission queue entry's
flagsfield (IOSQE_*). - IoUringSqOffsetsView
-
Immutable copy of the SQ offsets, safe to keep after
paramsis freed. - IoUringTimeoutFlags
-
Flags for
IORING_OP_TIMEOUT/IORING_OP_LINK_TIMEOUT. - LinkTimeoutOp
-
IORING_OP_LINK_TIMEOUT, used as the last entry of a linked chain. - ListenOp
-
IORING_OP_LISTEN. - NopOp
-
IORING_OP_NOP: does nothing, useful for ring round-trip tests. - OpenAtOp
-
IORING_OP_OPENAT. - PollAddOp
-
IORING_OP_POLL_ADD. - PollEvents
-
Poll event bits used by
IORING_OP_POLL_ADD. - PollRemoveOp
-
IORING_OP_POLL_REMOVE. - Posix
- Minimal raw-fd helpers.
- PosixConstants
- Minimal POSIX constants needed by the raw-fd layer.
- ProvideBuffersOp
-
IORING_OP_PROVIDE_BUFFERS. - ReadFixedOp
-
IORING_OP_READ_FIXED: read into a registered buffer. - ReadOp
-
IORING_OP_READ: positional read into a native buffer. - ReadvOp
-
IORING_OP_READV. - RecvMultiOp
-
Multishot
IORING_OP_RECVwith provided-buffer selection. - RecvOp
-
IORING_OP_RECV. - RemoveBuffersOp
-
IORING_OP_REMOVE_BUFFERS. - SendOp
-
IORING_OP_SEND. - ShutdownOp
-
IORING_OP_SHUTDOWN. - SocketConstants
- Socket constants needed by the network operations.
- SocketOp
-
IORING_OP_SOCKET: creates a socket and returns its fd in the CQE. - SpliceFlags
-
Flags for
IORING_OP_SPLICE/IORING_OP_TEE. - SpliceOp
-
IORING_OP_SPLICE. - StatxOp
-
IORING_OP_STATX. - TeeOp
-
IORING_OP_TEE. - TimeoutOp
-
IORING_OP_TIMEOUT. - TimeoutRemoveOp
-
IORING_OP_TIMEOUT_REMOVE. - UringBuffer
- A native buffer that can be handed to the kernel.
- UringBufRing
-
A registered provided-buffer ring (
IORING_REGISTER_PBUF_RING). - UringIoVec
-
One element of a
readv/writevvector. - UringIoVecList
-
A native
struct iovec[]array. - UringLoop
- A Future-based wrapper around IoUring with a dedicated reaper isolate.
- UringOp
- A typed encoder for one SQE.
- UringPath
- A NUL-terminated UTF-8 path in native memory.
- UringPipe
-
A pipe created by
pipe2(2). - UringSockAddr
-
A native IPv4
sockaddr_in(16 bytes). - UringTimespec
-
A native
struct __kernel_timespec(16 bytes) for timeout operations. - WriteFixedOp
-
IORING_OP_WRITE_FIXED: write from a registered buffer. - WriteOp
-
IORING_OP_WRITE: positional write from a native buffer. - WritevOp
-
IORING_OP_WRITEV.
Exceptions / Errors
- IoUringException
- An error reported by an io_uring syscall or by a completion.