IoUringIoOps Class — netty Architecture
Architecture documentation for the IoUringIoOps class in IoUringIoOps.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD e6443e97_b87f_da14_ce4b_19cb9f7db7e5["IoUringIoOps"] 006a785c_efeb_1884_4717_d15347f25549["IoUringIoOps.java"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|defined in| 006a785c_efeb_1884_4717_d15347f25549 d9b935f9_2068_2514_3b00_43f930825e3f["IoUringIoOps()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| d9b935f9_2068_2514_3b00_43f930825e3f 9d35f549_283c_f05e_b6ce_5fa8c787bc70["opcode()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| 9d35f549_283c_f05e_b6ce_5fa8c787bc70 70aafa90_11a7_20ee_f4d3_1856ba31444f["flags()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| 70aafa90_11a7_20ee_f4d3_1856ba31444f cd111c05_d298_cd81_6fe6_6196b29b6c18["ioPrio()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| cd111c05_d298_cd81_6fe6_6196b29b6c18 c91dcc8a_0ba7_705a_5197_1d025ee0b333["fd()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| c91dcc8a_0ba7_705a_5197_1d025ee0b333 986542ee_69c2_4303_9f16_f969902e0bf9["union1()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| 986542ee_69c2_4303_9f16_f969902e0bf9 884a4d0b_5d88_a28f_5b37_90d90577d365["union2()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| 884a4d0b_5d88_a28f_5b37_90d90577d365 e18920a0_647e_2009_fcdd_b38531d1b5c0["len()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| e18920a0_647e_2009_fcdd_b38531d1b5c0 bad50cd8_a766_66e2_c429_eaccc72f47ff["union3()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| bad50cd8_a766_66e2_c429_eaccc72f47ff 295d804a_a005_8343_092b_0f5909e82e86["data()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| 295d804a_a005_8343_092b_0f5909e82e86 76a05b52_4add_0291_ca59_db6eec1d4e8e["personality()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| 76a05b52_4add_0291_ca59_db6eec1d4e8e ddd4ca70_8c83_a018_7cff_5a15e7b3a18f["union4()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| ddd4ca70_8c83_a018_7cff_5a15e7b3a18f db880047_4102_43e1_ce0e_85acdbefb575["union5()"] e6443e97_b87f_da14_ce4b_19cb9f7db7e5 -->|method| db880047_4102_43e1_ce0e_85acdbefb575
Relationship Graph
Source Code
transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringIoOps.java lines 24–484
public final class IoUringIoOps implements IoOps {
private final byte opcode;
private final byte flags;
private final short ioPrio;
private final int fd;
private final long union1;
private final long union2;
private final int len;
private final int union3;
private final short data;
private final short personality;
private final short union4;
private final int union5;
private final long union6;
/**
* Create a new instance which represents the {@code io_uring_sqe} struct.
*
* <pre>{@code
* struct io_uring_sqe {
* __u8 opcode; // type of operation for this sqe
* __u8 flags; // IOSQE_ flags
* __u16 ioprio; // ioprio for the request
* __s32 fd; // file descriptor to do IO on
*
* union { // union1
* __u64 off; // offset into file
* __u64 addr2;
* struct {
* __u32 cmd_op;
* __u32 __pad1;
* };
* };
*
* union { // union2
* __u64 addr; // pointer to buffer or iovecs
* __u64 splice_off_in;
* struct {
* __u32 level;
* __u32 optname;
* };
* };
* __u32 len; // buffer size or number of iovecs
*
* union { // union3
* __kernel_rwf_t rw_flags;
* __u32 fsync_flags;
* __u16 poll_events; // compatibility
* __u32 poll32_events; // word-reversed for BE
* __u32 sync_range_flags;
* __u32 msg_flags;
* __u32 timeout_flags;
* __u32 accept_flags;
* __u32 cancel_flags;
* __u32 open_flags;
* __u32 statx_flags;
* __u32 fadvise_advice;
* __u32 splice_flags;
* __u32 rename_flags;
* __u32 unlink_flags;
* __u32 hardlink_flags;
* __u32 xeattr_flags;
* __u32 msg_ring_flags;
* __u32 uring_cmd_flags;
* __u32 waitid_flags;
* __u32 futex_flags;
* __u32 install_fd_flags;
* __u32 nop_flags;
* };
* __u64 user_data; // data to be passed back at completion time
* // pack this to avoid bogus arm OABI complaints
*
* union { // union4
*
* // index into fixed buffers, if used
* __u16 buf_index;
* // for grouped buffer selection
* __u16 buf_group;
* }__attribute__((packed));
* // personality to use, if used
Source
Frequently Asked Questions
What is the IoUringIoOps class?
IoUringIoOps is a class in the netty codebase, defined in transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringIoOps.java.
Where is IoUringIoOps defined?
IoUringIoOps is defined in transport-classes-io_uring/src/main/java/io/netty/channel/uring/IoUringIoOps.java at line 24.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free