diff --git a/src/unix.rs b/src/unix.rs index db41a361a..1df1dd161 100644 --- a/src/unix.rs +++ b/src/unix.rs @@ -195,6 +195,12 @@ impl io::Write for Fd { } } +impl AsRawFd for Fd where T: AsRawFd { + fn as_raw_fd(&self) -> RawFd { + self.0.as_raw_fd() + } +} + pub type ChildStdin = PollEvented>; pub type ChildStdout = PollEvented>; pub type ChildStderr = PollEvented>; @@ -206,10 +212,10 @@ impl Evented for Fd where T: AsRawFd { interest: Ready, opts: PollOpt) -> io::Result<()> { - EventedFd(&self.0.as_raw_fd()).register(poll, - token, - interest | UnixReady::hup(), - opts) + EventedFd(&self.as_raw_fd()).register(poll, + token, + interest | UnixReady::hup(), + opts) } fn reregister(&self, @@ -218,14 +224,14 @@ impl Evented for Fd where T: AsRawFd { interest: Ready, opts: PollOpt) -> io::Result<()> { - EventedFd(&self.0.as_raw_fd()).reregister(poll, - token, - interest | UnixReady::hup(), - opts) + EventedFd(&self.as_raw_fd()).reregister(poll, + token, + interest | UnixReady::hup(), + opts) } fn deregister(&self, poll: &mio::Poll) -> io::Result<()> { - EventedFd(&self.0.as_raw_fd()).deregister(poll) + EventedFd(&self.as_raw_fd()).deregister(poll) } }