diff options
author | Bryant Mairs <bryant@mai.rs> | 2019-03-10 08:29:23 -0700 |
---|---|---|
committer | Bryant Mairs <bryant@mai.rs> | 2019-06-09 11:31:46 -0700 |
commit | c50e987b4e169e2d7dc7089c91407e1e55c550f1 (patch) | |
tree | 4892e791f8809dfa1501e9fa4ff999a106a8dd04 /src/poll.rs | |
parent | 2075ac70bdd4848b08213a237feb32f5506096e0 (diff) | |
download | nix-c50e987b4e169e2d7dc7089c91407e1e55c550f1.zip |
Add extra traits for all types
Derive Clone, Copy, Eq, Hash, and PartialEq for all types. Not all
traits are supported by all types, which is why many are missing
some.
Diffstat (limited to 'src/poll.rs')
-rw-r--r-- | src/poll.rs | 20 |
1 files changed, 1 insertions, 19 deletions
diff --git a/src/poll.rs b/src/poll.rs index 160b5bc6..c603611e 100644 --- a/src/poll.rs +++ b/src/poll.rs @@ -4,7 +4,6 @@ use sys::time::TimeSpec; #[cfg(any(target_os = "android", target_os = "dragonfly", target_os = "freebsd", target_os = "linux"))] use sys::signal::SigSet; use std::os::unix::io::RawFd; -use std::fmt; use libc; use Result; @@ -19,7 +18,7 @@ use errno::Errno; /// After a call to `poll` or `ppoll`, the events that occured can be /// retrieved by calling [`revents()`](#method.revents) on the `PollFd`. #[repr(C)] -#[derive(Clone, Copy)] +#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)] pub struct PollFd { pollfd: libc::pollfd, } @@ -43,23 +42,6 @@ impl PollFd { } } -impl fmt::Debug for PollFd { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - let pfd = self.pollfd; - let mut ds = f.debug_struct("PollFd"); - ds.field("fd", &pfd.fd); - match PollFlags::from_bits(pfd.events) { - None => ds.field("events", &pfd.events), - Some(ef) => ds.field("events", &ef), - }; - match PollFlags::from_bits(pfd.revents) { - None => ds.field("revents", &pfd.revents), - Some(ef) => ds.field("revents", &ef), - }; - ds.finish() - } -} - libc_bitflags! { /// These flags define the different events that can be monitored by `poll` and `ppoll` pub struct PollFlags: libc::c_short { |