diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2021-09-07 23:50:23 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-07 23:50:23 +0000 |
commit | 53fea96dd41926fb8527ac1ad35ada2ba106e454 (patch) | |
tree | f0d13836632673219798894738e114cef2d4803d /src | |
parent | 630700eb7c525b461d8f32b591e39a786cc3e2a0 (diff) | |
parent | b0b7beb2a8772dd492272c4896425cde46b8dce9 (diff) | |
download | nix-53fea96dd41926fb8527ac1ad35ada2ba106e454.zip |
Merge #1516
1516: Implement AsRawFd for PollFd r=asomers a=cemeyer
Implement the trait on PollFd, providing an `as_raw_fd()` accessor to
get the RawFd associated with the PollFd.
Subsumes #1147, #1286. Closes #1146.
Test: `cargo test --test test test_pollfd_fd`
Co-authored-by: Conrad Meyer <cem@FreeBSD.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/poll.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/poll.rs b/src/poll.rs index e814337a..0eaf7e1d 100644 --- a/src/poll.rs +++ b/src/poll.rs @@ -3,7 +3,7 @@ use crate::sys::time::TimeSpec; #[cfg(any(target_os = "android", target_os = "dragonfly", target_os = "freebsd", target_os = "linux"))] use crate::sys::signal::SigSet; -use std::os::unix::io::RawFd; +use std::os::unix::io::{AsRawFd, RawFd}; use crate::Result; use crate::errno::Errno; @@ -41,6 +41,12 @@ impl PollFd { } } +impl AsRawFd for PollFd { + fn as_raw_fd(&self) -> RawFd { + self.pollfd.fd + } +} + libc_bitflags! { /// These flags define the different events that can be monitored by `poll` and `ppoll` pub struct PollFlags: libc::c_short { |