struct IOR::SQE

Defined in:

ior/sqe.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(sqe : Pointer(LibUring::IOUringSQE)) #

[View source]

Instance Method Detail

def accept(fd, **options) #

TODO Support passing sockaddr, socklen and flags.


[View source]
def async_cancel(cancel_userdata : UInt64, **options) #

[View source]
def close(fd, **options) #

[View source]
def connect(fd, addr, size, **options) #

[View source]
def epoll_ctl #

[View source]
def fallocate(fd, offset, length, mode = 0, **options) #

[View source]
def files_update(files : Array(Int32), off = 0, **options) #

[View source]
def fsync(fd, flags = 0, **options) #

[View source]
def link_timeout(time : Pointer(LibC::Timespec), relative = true, **options) #

Note: Requires the preceding operation in the same submit to have the io_link flag set.


[View source]
def nop(**options) #

[View source]
def openat(fd, pathname, flags : String, **options) #

[View source]
def openat(fd, pathname : String, flags : UInt32 = 0, mode : LibC::ModeT = 0, **options) #

[View source]
def openat(pathname, relative_to_cwd = false, **options) #

Absolute path, or relative to CWD


[View source]
def poll_add(fd, poll_mask : LibC::POLL_FLAG = LibC::POLL_FLAG::POLLIN, **options) #

[View source]
def read(fd, buf, size = buf.size, offset = -1, **options) #

[View source]
def readv(fd, iovecs, offset, **options) #

TODO Support using current position (ie offset -1), based on IORING_FEAT_RW_CUR_POS


[View source]
def recv(fd, buf, size = buf.size, flags = 0, **options) #

[View source]
def recvmsg(fd, msg : Pointer(LibC::MsgHeader), flags = 0, **options) #

[View source]
def send(fd, buf, size = buf.size, flags = 0, **options) #

[View source]
def sendmsg(fd, msg : Pointer(LibC::MsgHeader), flags = 0, **options) #

[View source]
def splice(fd_in, off_in : UInt64 | Nil, fd_out, off_out : UInt64 | Nil, size : Int32, flags = 0, **options) #

[View source]
def timeout(time : Pointer(LibC::Timespec), relative = true, wait_nr = 0, **options) #

[View source]
def timeout_remove(cancel_userdata : UInt64, **options) #

[View source]
def write(fd, buf, size = buf.size, offset = -1, **options) #

[View source]
def writev(fd, iovecs, offset, **options) #

[View source]