Skip to content

Commit

Permalink
Implement FusedIterator for std::net::[Into]Incoming
Browse files Browse the repository at this point in the history
They never return `None`, so they trivially fulfill the contract.
  • Loading branch information
ChayimFriedman2 authored May 23, 2022
1 parent 07e7b43 commit 369555c
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions library/std/src/net/tcp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ use crate::io::prelude::*;

use crate::fmt;
use crate::io::{self, IoSlice, IoSliceMut};
use crate::iter::FusedIterator;
use crate::net::{Shutdown, SocketAddr, ToSocketAddrs};
use crate::sys_common::net as net_imp;
use crate::sys_common::{AsInner, FromInner, IntoInner};
Expand Down Expand Up @@ -1009,6 +1010,9 @@ impl<'a> Iterator for Incoming<'a> {
}
}

#[stable(feature = "tcp_listener_incoming_fused_iterator", since = "1.63.0")]
impl FusedIterator for Incoming<'_> {}

#[unstable(feature = "tcplistener_into_incoming", issue = "88339")]
impl Iterator for IntoIncoming {
type Item = io::Result<TcpStream>;
Expand All @@ -1017,6 +1021,9 @@ impl Iterator for IntoIncoming {
}
}

#[unstable(feature = "tcplistener_into_incoming", issue = "88339")]
impl FusedIterator for IntoIncoming {}

impl AsInner<net_imp::TcpListener> for TcpListener {
fn as_inner(&self) -> &net_imp::TcpListener {
&self.0
Expand Down

0 comments on commit 369555c

Please sign in to comment.