mirror of
https://github.com/tokio-rs/tokio.git
synced 2026-08-28 00:00:11 +02:00
27 lines
510 B
Rust
27 lines
510 B
Rust
use {UnixListener, UnixStream};
|
|
|
|
use futures::{Poll, Stream};
|
|
|
|
use std::io;
|
|
|
|
/// Stream of listeners
|
|
#[derive(Debug)]
|
|
pub struct Incoming {
|
|
inner: UnixListener,
|
|
}
|
|
|
|
impl Incoming {
|
|
pub(crate) fn new(listener: UnixListener) -> Incoming {
|
|
Incoming { inner: listener }
|
|
}
|
|
}
|
|
|
|
impl Stream for Incoming {
|
|
type Item = UnixStream;
|
|
type Error = io::Error;
|
|
|
|
fn poll(&mut self) -> Poll<Option<Self::Item>, io::Error> {
|
|
Ok(Some(try_ready!(self.inner.poll_accept()).0).into())
|
|
}
|
|
}
|