Skip to content

Commit 142fdcb

Browse files
authored
feat: sink::With: Implement FusedStream (#2948)
1 parent 89e5d8b commit 142fdcb

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

futures-util/src/sink/with.rs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use core::marker::PhantomData;
33
use core::pin::Pin;
44
use futures_core::future::Future;
55
use futures_core::ready;
6-
use futures_core::stream::Stream;
6+
use futures_core::stream::{FusedStream, Stream};
77
use futures_core::task::{Context, Poll};
88
use futures_sink::Sink;
99
use pin_project_lite::pin_project;
@@ -74,6 +74,17 @@ where
7474
delegate_stream!(sink);
7575
}
7676

77+
impl<S, Item, U, Fut, F> FusedStream for With<S, Item, U, Fut, F>
78+
where
79+
S: FusedStream + Sink<Item>,
80+
F: FnMut(U) -> Fut,
81+
Fut: Future,
82+
{
83+
fn is_terminated(&self) -> bool {
84+
self.sink.is_terminated()
85+
}
86+
}
87+
7788
impl<Si, Item, U, Fut, F, E> With<Si, Item, U, Fut, F>
7889
where
7990
Si: Sink<Item>,

0 commit comments

Comments
 (0)