From 7e88b56be5fd70f53af6639c04546cf034a66d9e Mon Sep 17 00:00:00 2001 From: Taiki Endo Date: Wed, 22 Apr 2020 02:34:55 +0900 Subject: test: remove unnecessary unsafe code (#2424) --- tokio-test/src/task.rs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'tokio-test') diff --git a/tokio-test/src/task.rs b/tokio-test/src/task.rs index b31850ba..82d29134 100644 --- a/tokio-test/src/task.rs +++ b/tokio-test/src/task.rs @@ -119,20 +119,16 @@ impl Spawn { impl Future for Spawn { type Output = T::Output; - fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll { - // Safety: we only expose &mut T if T: Unpin therefore this is safe. - let future = unsafe { self.map_unchecked_mut(|s| &mut s.future) }; - future.poll(cx) + fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll { + self.future.as_mut().poll(cx) } } impl Stream for Spawn { type Item = T::Item; - fn poll_next(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { - // Safety: we only expose &mut T if T: Unpin therefore this is safe. - let stream = unsafe { self.map_unchecked_mut(|s| &mut s.future) }; - stream.poll_next(cx) + fn poll_next(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + self.future.as_mut().poll_next(cx) } } -- cgit v1.2.3