Skip to content

Commit 91b83a2

Browse files
committed
Make impl<Fd: AsFd> impl take ?Sized
1 parent 19a647d commit 91b83a2

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

library/std/src/os/fd/owned.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -240,15 +240,15 @@ pub trait AsFd {
240240
}
241241

242242
#[stable(feature = "io_safety", since = "1.63.0")]
243-
impl<T: AsFd> AsFd for &T {
243+
impl<T: AsFd + ?Sized> AsFd for &T {
244244
#[inline]
245245
fn as_fd(&self) -> BorrowedFd<'_> {
246246
T::as_fd(self)
247247
}
248248
}
249249

250250
#[stable(feature = "io_safety", since = "1.63.0")]
251-
impl<T: AsFd> AsFd for &mut T {
251+
impl<T: AsFd + ?Sized> AsFd for &mut T {
252252
#[inline]
253253
fn as_fd(&self) -> BorrowedFd<'_> {
254254
T::as_fd(self)
@@ -392,23 +392,23 @@ impl From<OwnedFd> for crate::net::UdpSocket {
392392
/// impl MyTrait for Box<UdpSocket> {}
393393
/// # }
394394
/// ```
395-
impl<T: AsFd> AsFd for crate::sync::Arc<T> {
395+
impl<T: AsFd + ?Sized> AsFd for crate::sync::Arc<T> {
396396
#[inline]
397397
fn as_fd(&self) -> BorrowedFd<'_> {
398398
(**self).as_fd()
399399
}
400400
}
401401

402402
#[stable(feature = "asfd_rc", since = "1.69.0")]
403-
impl<T: AsFd> AsFd for crate::rc::Rc<T> {
403+
impl<T: AsFd + ?Sized> AsFd for crate::rc::Rc<T> {
404404
#[inline]
405405
fn as_fd(&self) -> BorrowedFd<'_> {
406406
(**self).as_fd()
407407
}
408408
}
409409

410410
#[stable(feature = "asfd_ptrs", since = "1.64.0")]
411-
impl<T: AsFd> AsFd for Box<T> {
411+
impl<T: AsFd + ?Sized> AsFd for Box<T> {
412412
#[inline]
413413
fn as_fd(&self) -> BorrowedFd<'_> {
414414
(**self).as_fd()

0 commit comments

Comments
 (0)