summaryrefslogtreecommitdiffstats
path: root/examples/chat.rs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/chat.rs')
-rw-r--r--examples/chat.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/examples/chat.rs b/examples/chat.rs
index 91589072..e1da5f32 100644
--- a/examples/chat.rs
+++ b/examples/chat.rs
@@ -27,10 +27,11 @@
#![warn(rust_2018_idioms)]
use tokio::net::{TcpListener, TcpStream};
+use tokio::stream::{Stream, StreamExt};
use tokio::sync::{mpsc, Mutex};
use tokio_util::codec::{Framed, LinesCodec, LinesCodecError};
-use futures::{SinkExt, Stream, StreamExt};
+use futures::SinkExt;
use std::collections::HashMap;
use std::env;
use std::error::Error;
@@ -163,12 +164,12 @@ impl Stream for Peer {
fn poll_next(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Option<Self::Item>> {
// First poll the `UnboundedReceiver`.
- if let Poll::Ready(Some(v)) = self.rx.poll_next_unpin(cx) {
+ if let Poll::Ready(Some(v)) = Pin::new(&mut self.rx).poll_next(cx) {
return Poll::Ready(Some(Ok(Message::Received(v))));
}
// Secondly poll the `Framed` stream.
- let result: Option<_> = futures::ready!(self.lines.poll_next_unpin(cx));
+ let result: Option<_> = futures::ready!(Pin::new(&mut self.lines).poll_next(cx));
Poll::Ready(match result {
// We've received a message we should broadcast to others.