pub struct EpollEventInterest {
fd_num: i32,
events: u32,
data: u64,
weak_epfd: WeakFileDescriptionRef<Epoll>,
}Expand description
EpollEventInterest registers the file description information to an epoll
instance during a successful epoll_ctl call. It also stores additional
information needed to check and update readiness state for epoll_wait.
events and data field matches the epoll_event struct defined
by the epoll_ctl man page. For more information
see the man page:
Fields§
§fd_num: i32The file descriptor value of the file description registered. This is only used for ready_list, to inform userspace which FD triggered an event. For that, it is crucial to preserve the original FD number. This FD number must never be “dereferenced” to a file description inside Miri.
events: u32The events bitmask retrieved from epoll_event.
data: u64The data retrieved from epoll_event.
libc’s data field in epoll_event can store integer or pointer,
but only u64 is supported for now.
https://man7.org/linux/man-pages/man3/epoll_event.3type.html
weak_epfd: WeakFileDescriptionRef<Epoll>The epoll file description that this EpollEventInterest is registered under.
This is weak to avoid cycles, but an upgrade is always guaranteed to succeed
because only the Epoll holds a strong ref to a EpollEventInterest.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for EpollEventInterest
impl !RefUnwindSafe for EpollEventInterest
impl !Send for EpollEventInterest
impl !Sync for EpollEventInterest
impl Unpin for EpollEventInterest
impl !UnwindSafe for EpollEventInterest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes