11#![ allow( non_camel_case_types, dead_code) ]
22
33use std:: io;
4- use std:: os:: unix :: io :: RawFd ;
4+ use std:: os:: fd :: AsFd ;
55use std:: slice;
66use std:: time:: Duration ;
77
@@ -12,18 +12,19 @@ use nix::sys::signal::SigSet;
1212#[ cfg( any( target_os = "linux" , test) ) ]
1313use nix:: sys:: time:: TimeSpec ;
1414
15- pub fn wait_read_fd ( fd : RawFd , timeout : Duration ) -> io:: Result < ( ) > {
16- wait_fd ( fd, PollFlags :: POLLIN , timeout)
15+ pub fn wait_read_fd < Fd : AsFd > ( fd : Fd , timeout : Duration ) -> io:: Result < ( ) > {
16+ wait_fd ( fd. as_fd ( ) , PollFlags :: POLLIN , timeout)
1717}
1818
19- pub fn wait_write_fd ( fd : RawFd , timeout : Duration ) -> io:: Result < ( ) > {
20- wait_fd ( fd, PollFlags :: POLLOUT , timeout)
19+ pub fn wait_write_fd < Fd : AsFd > ( fd : Fd , timeout : Duration ) -> io:: Result < ( ) > {
20+ wait_fd ( fd. as_fd ( ) , PollFlags :: POLLOUT , timeout)
2121}
2222
23- fn wait_fd ( fd : RawFd , events : PollFlags , timeout : Duration ) -> io:: Result < ( ) > {
23+ fn wait_fd < Fd : AsFd > ( fd : Fd , events : PollFlags , timeout : Duration ) -> io:: Result < ( ) > {
2424 use nix:: errno:: Errno :: { EIO , EPIPE } ;
2525
26- let mut fd = PollFd :: new ( fd, events) ;
26+ let fd = fd. as_fd ( ) ;
27+ let mut fd = PollFd :: new ( & fd, events) ;
2728
2829 let wait = match poll_clamped ( & mut fd, timeout) {
2930 Ok ( r) => r,
0 commit comments