diff --git a/futures-channel/Cargo.toml b/futures-channel/Cargo.toml index 2594679365..d1643c5e58 100644 --- a/futures-channel/Cargo.toml +++ b/futures-channel/Cargo.toml @@ -25,4 +25,4 @@ futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.3", de [dev-dependencies] futures-preview = { path = "../futures", version = "0.3.0-alpha.3", default-features = true } -pin-utils = "0.1.0-alpha.1" +pin-utils = "0.1.0-alpha.2" diff --git a/futures-channel/benches/sync_mpsc.rs b/futures-channel/benches/sync_mpsc.rs index f1b48f7193..dc0b5c0411 100755 --- a/futures-channel/benches/sync_mpsc.rs +++ b/futures-channel/benches/sync_mpsc.rs @@ -6,7 +6,7 @@ use futures::executor::LocalPool; use futures::stream::{Stream, StreamExt}; use futures::sink::Sink; use futures::task::{self, Poll, Wake, LocalWaker}; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::Arc; use test::Bencher; diff --git a/futures-channel/src/mpsc/mod.rs b/futures-channel/src/mpsc/mod.rs index de036c4e6a..675aca7eb1 100644 --- a/futures-channel/src/mpsc/mod.rs +++ b/futures-channel/src/mpsc/mod.rs @@ -84,7 +84,7 @@ use std::any::Any; use std::error::Error; use std::fmt; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::{Arc, Mutex}; use std::sync::atomic::AtomicUsize; use std::sync::atomic::Ordering::SeqCst; diff --git a/futures-channel/src/oneshot.rs b/futures-channel/src/oneshot.rs index 5eb1a567b3..7e261e621c 100644 --- a/futures-channel/src/oneshot.rs +++ b/futures-channel/src/oneshot.rs @@ -3,7 +3,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll, Waker}; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::Arc; use std::sync::atomic::AtomicBool; use std::sync::atomic::Ordering::SeqCst; diff --git a/futures-channel/tests/oneshot.rs b/futures-channel/tests/oneshot.rs index 899f0807ac..2b7bcff91b 100644 --- a/futures-channel/tests/oneshot.rs +++ b/futures-channel/tests/oneshot.rs @@ -4,7 +4,7 @@ use futures::channel::oneshot::{self, Sender}; use futures::executor::block_on; use futures::future::{Future, FutureExt, poll_fn}; use futures::task::{self, Poll}; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::mpsc; use std::thread; diff --git a/futures-core/src/future.rs b/futures-core/src/future.rs index 66ba1cf9ac..fc5a71165a 100644 --- a/futures-core/src/future.rs +++ b/futures-core/src/future.rs @@ -1,7 +1,7 @@ //! Futures. use crate::task::{self, Poll}; -use core::mem::PinMut; +use core::pin::PinMut; pub use core::future::{Future, FutureObj, LocalFutureObj, UnsafeFutureObj}; diff --git a/futures-core/src/stream/mod.rs b/futures-core/src/stream/mod.rs index 0ccac6b43a..3d4a6d1438 100644 --- a/futures-core/src/stream/mod.rs +++ b/futures-core/src/stream/mod.rs @@ -2,7 +2,7 @@ use crate::task::{self, Poll}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; #[cfg(feature = "either")] use either::Either; @@ -128,7 +128,8 @@ impl TryStream for S } if_std! { - use std::boxed::{Box, PinBox}; + use std::boxed::Box; + use std::pin::PinBox; impl Stream for Box { type Item = S::Item; diff --git a/futures-core/src/stream/stream_obj.rs b/futures-core/src/stream/stream_obj.rs index 2e99b2cc51..9063f953d9 100644 --- a/futures-core/src/stream/stream_obj.rs +++ b/futures-core/src/stream/stream_obj.rs @@ -2,7 +2,7 @@ use super::Stream; use crate::task::{self, Poll}; use core::fmt; use core::marker::{PhantomData, Unpin}; -use core::mem::PinMut; +use core::pin::PinMut; /// A custom trait object for polling streams, roughly akin to /// `Box + 'a>`. @@ -193,7 +193,8 @@ where } if_std! { - use std::boxed::{Box, PinBox}; + use std::boxed::Box; + use std::pin::PinBox; unsafe impl<'a, T, F> UnsafeStreamObj<'a, T> for Box where F: Stream + 'a diff --git a/futures-executor/Cargo.toml b/futures-executor/Cargo.toml index 4ca6f5a43d..14e6d1dc61 100644 --- a/futures-executor/Cargo.toml +++ b/futures-executor/Cargo.toml @@ -26,7 +26,7 @@ futures-util-preview = { path = "../futures-util", version = "0.3.0-alpha.3", de futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.3", default-features = false} num_cpus = { version = "1.8.0", optional = true } lazy_static = { version = "1.1.0", optional = true } -pin-utils = "0.1.0-alpha.1" +pin-utils = "0.1.0-alpha.2" [dev-dependencies] futures-preview = { path = "../futures", version = "0.3.0-alpha.3" } diff --git a/futures-executor/benches/poll.rs b/futures-executor/benches/poll.rs index 08b4c077eb..e46ff524df 100755 --- a/futures-executor/benches/poll.rs +++ b/futures-executor/benches/poll.rs @@ -4,7 +4,7 @@ use futures::executor::LocalPool; use futures::future::{Future, FutureExt}; use futures::task::{self, Poll, Waker, LocalWaker, Wake}; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::Arc; use test::Bencher; diff --git a/futures-executor/benches/thread_notify.rs b/futures-executor/benches/thread_notify.rs index 61651f082f..a4e09a4b73 100755 --- a/futures-executor/benches/thread_notify.rs +++ b/futures-executor/benches/thread_notify.rs @@ -4,7 +4,7 @@ use futures::executor::block_on; use futures::future::Future; use futures::task::{self, Poll, Waker}; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use test::Bencher; #[bench] diff --git a/futures-executor/tests/local_pool.rs b/futures-executor/tests/local_pool.rs index fbd8679033..a4fcee6921 100755 --- a/futures-executor/tests/local_pool.rs +++ b/futures-executor/tests/local_pool.rs @@ -4,9 +4,8 @@ use futures::channel::oneshot; use futures::executor::LocalPool; use futures::future::{Future, lazy}; use futures::task::{self, Poll, Spawn}; -use std::boxed::PinBox; use std::cell::{Cell, RefCell}; -use std::mem::PinMut; +use std::pin::{PinBox, PinMut}; use std::rc::Rc; struct Pending(Rc<()>); diff --git a/futures-sink/src/channel_impls.rs b/futures-sink/src/channel_impls.rs index 59b34c5b4a..d0138f335e 100644 --- a/futures-sink/src/channel_impls.rs +++ b/futures-sink/src/channel_impls.rs @@ -1,7 +1,7 @@ use crate::{Sink, Poll}; use futures_core::task; use futures_channel::mpsc::{Sender, SendError, UnboundedSender}; -use std::mem::PinMut; +use std::pin::PinMut; impl Sink for Sender { type SinkItem = T; diff --git a/futures-sink/src/lib.rs b/futures-sink/src/lib.rs index ebe193c912..0c66ac59bc 100644 --- a/futures-sink/src/lib.rs +++ b/futures-sink/src/lib.rs @@ -18,7 +18,7 @@ macro_rules! if_std { use futures_core::task::{self, Poll}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; /// A `Sink` is a value into which other values can be sent, asynchronously. /// diff --git a/futures-test/Cargo.toml b/futures-test/Cargo.toml index d27b11c55d..785097295d 100644 --- a/futures-test/Cargo.toml +++ b/futures-test/Cargo.toml @@ -20,7 +20,7 @@ name = "futures_test" futures-core-preview = { version = "0.3.0-alpha.2", path = "../futures-core", default-features = false } futures-util-preview = { version = "0.3.0-alpha.2", path = "../futures-util", default-features = false } futures-executor-preview = { version = "0.3.0-alpha.2", path = "../futures-executor", default-features = false } -pin-utils = { version = "0.1.0-alpha.1", default-features = false } +pin-utils = { version = "0.1.0-alpha.2", default-features = false } [dev-dependencies] futures-preview = { version = "0.3.0-alpha.2", path = "../futures", default-features = false, features = ["std"] } diff --git a/futures-test/src/assert.rs b/futures-test/src/assert.rs index 9f0aa49beb..93e4b0b4a1 100644 --- a/futures-test/src/assert.rs +++ b/futures-test/src/assert.rs @@ -30,7 +30,7 @@ macro_rules! assert_stream_pending { ($stream:expr) => {{ let mut stream = &mut $stream; $crate::assert::assert_is_unpin_stream(stream); - let stream = $crate::std_reexport::mem::PinMut::new(stream); + let stream = $crate::std_reexport::pin::PinMut::new(stream); let cx = &mut $crate::task::no_spawn_context(); let poll = $crate::futures_core_reexport::stream::Stream::poll_next( stream, cx, @@ -67,7 +67,7 @@ macro_rules! assert_stream_next { ($stream:expr, $item:expr) => {{ let mut stream = &mut $stream; $crate::assert::assert_is_unpin_stream(stream); - let stream = $crate::std_reexport::mem::PinMut::new(stream); + let stream = $crate::std_reexport::pin::PinMut::new(stream); let cx = &mut $crate::task::no_spawn_context(); match $crate::futures_core_reexport::stream::Stream::poll_next(stream, cx) { $crate::futures_core_reexport::task::Poll::Ready(Some(x)) => { @@ -110,7 +110,7 @@ macro_rules! assert_stream_done { ($stream:expr) => {{ let mut stream = &mut $stream; $crate::assert::assert_is_unpin_stream(stream); - let stream = $crate::std_reexport::mem::PinMut::new(stream); + let stream = $crate::std_reexport::pin::PinMut::new(stream); let cx = &mut $crate::task::no_spawn_context(); match $crate::futures_core_reexport::stream::Stream::poll_next(stream, cx) { $crate::futures_core_reexport::task::Poll::Ready(Some(_)) => { diff --git a/futures-test/src/future/assert_unmoved.rs b/futures-test/src/future/assert_unmoved.rs index adaa64788b..225fbf78f6 100644 --- a/futures-test/src/future/assert_unmoved.rs +++ b/futures-test/src/future/assert_unmoved.rs @@ -2,7 +2,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::marker::Pinned; -use std::mem::PinMut; +use std::pin::PinMut; use std::ptr; /// Combinator for the diff --git a/futures-test/src/future/pending_once.rs b/futures-test/src/future/pending_once.rs index 8f23190a27..d98e53242f 100644 --- a/futures-test/src/future/pending_once.rs +++ b/futures-test/src/future/pending_once.rs @@ -1,6 +1,6 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; -use std::mem::PinMut; +use std::pin::PinMut; use pin_utils::{unsafe_pinned, unsafe_unpinned}; /// Combinator that guarantees one [`Poll::Pending`] before polling its inner diff --git a/futures-util/Cargo.toml b/futures-util/Cargo.toml index c41e1987a7..f762c6efbc 100644 --- a/futures-util/Cargo.toml +++ b/futures-util/Cargo.toml @@ -33,7 +33,7 @@ either = { version = "1.4", default-features = false } slab = { version = "0.4", optional = true } futures01 = { package = "futures", version = "0.1", optional = true } tokio-executor = { version = "0.1.2", optional = true } -pin-utils = "0.1.0-alpha.1" +pin-utils = "0.1.0-alpha.2" [dev-dependencies] futures-preview = { path = "../futures", version = "0.3.0-alpha.3", features = ["tokio-compat"] } diff --git a/futures-util/src/async_await/join.rs b/futures-util/src/async_await/join.rs index 5a599ba35a..c3619c889d 100644 --- a/futures-util/src/async_await/join.rs +++ b/futures-util/src/async_await/join.rs @@ -33,14 +33,14 @@ macro_rules! join { let mut all_done = true; $( if $crate::core_reexport::future::Future::poll( - unsafe { $crate::core_reexport::mem::PinMut::new_unchecked(&mut $fut) }, cx).is_pending() + unsafe { $crate::core_reexport::pin::PinMut::new_unchecked(&mut $fut) }, cx).is_pending() { all_done = false; } )* if all_done { $crate::core_reexport::task::Poll::Ready(($( - unsafe { $crate::core_reexport::mem::PinMut::new_unchecked(&mut $fut) }.take_output().unwrap(), + unsafe { $crate::core_reexport::pin::PinMut::new_unchecked(&mut $fut) }.take_output().unwrap(), )*)) } else { $crate::core_reexport::task::Poll::Pending @@ -101,15 +101,15 @@ macro_rules! try_join { let mut all_done = true; $( if $crate::core_reexport::future::Future::poll( - unsafe { $crate::core_reexport::mem::PinMut::new_unchecked(&mut $fut) }, cx).is_pending() + unsafe { $crate::core_reexport::pin::PinMut::new_unchecked(&mut $fut) }, cx).is_pending() { all_done = false; - } else if unsafe { $crate::core_reexport::mem::PinMut::new_unchecked(&mut $fut) }.output_mut().unwrap().is_err() { + } else if unsafe { $crate::core_reexport::pin::PinMut::new_unchecked(&mut $fut) }.output_mut().unwrap().is_err() { // `.err().unwrap()` rather than `.unwrap_err()` so that we don't introduce // a `T: Debug` bound. return $crate::core_reexport::task::Poll::Ready( $crate::core_reexport::result::Result::Err( - unsafe { $crate::core_reexport::mem::PinMut::new_unchecked(&mut $fut) }.take_output().unwrap().err().unwrap() + unsafe { $crate::core_reexport::pin::PinMut::new_unchecked(&mut $fut) }.take_output().unwrap().err().unwrap() ) ); } @@ -119,7 +119,7 @@ macro_rules! try_join { $crate::core_reexport::result::Result::Ok(($( // `.ok().unwrap()` rather than `.unwrap()` so that we don't introduce // an `E: Debug` bound. - unsafe { $crate::core_reexport::mem::PinMut::new_unchecked(&mut $fut) }.take_output().unwrap().ok().unwrap(), + unsafe { $crate::core_reexport::pin::PinMut::new_unchecked(&mut $fut) }.take_output().unwrap().ok().unwrap(), )*)) ) } else { diff --git a/futures-util/src/async_await/pending.rs b/futures-util/src/async_await/pending.rs index bce9a83d11..75bec84617 100644 --- a/futures-util/src/async_await/pending.rs +++ b/futures-util/src/async_await/pending.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/async_await/poll.rs b/futures-util/src/async_await/poll.rs index d412964414..3c12ca0081 100644 --- a/futures-util/src/async_await/poll.rs +++ b/futures-util/src/async_await/poll.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/async_await/select.rs b/futures-util/src/async_await/select.rs index 8b84d2fd5d..40887da6b9 100644 --- a/futures-util/src/async_await/select.rs +++ b/futures-util/src/async_await/select.rs @@ -50,7 +50,7 @@ macro_rules! select { let __priv_res = await!($crate::future::poll_fn(|cx| { $( match $crate::core_reexport::future::Future::poll( - $crate::core_reexport::mem::PinMut::new(&mut $name), cx) + $crate::core_reexport::pin::PinMut::new(&mut $name), cx) { $crate::core_reexport::task::Poll::Ready(x) => return $crate::core_reexport::task::Poll::Ready(__PrivResult::$name(x)), diff --git a/futures-util/src/compat/compat01to03.rs b/futures-util/src/compat/compat01to03.rs index 0389f346ce..2332bd104d 100644 --- a/futures-util/src/compat/compat01to03.rs +++ b/futures-util/src/compat/compat01to03.rs @@ -5,7 +5,7 @@ use futures01::executor::{ }; use futures01::{Async as Async01, Future as Future01, Stream as Stream01}; use futures_core::{task as task03, Future as Future03, Stream as Stream03}; -use std::mem::PinMut; +use std::pin::PinMut; impl Future03 for Compat { type Output = Result; diff --git a/futures-util/src/compat/compat03to01.rs b/futures-util/src/compat/compat03to01.rs index cb4918e06d..f29d8b6165 100644 --- a/futures-util/src/compat/compat03to01.rs +++ b/futures-util/src/compat/compat03to01.rs @@ -8,7 +8,7 @@ use futures_core::{ task as task03, TryFuture as TryFuture03, TryStream as TryStream03, }; use futures_sink::Sink as Sink03; -use std::{marker::Unpin, mem::PinMut, sync::Arc}; +use std::{marker::Unpin, pin::PinMut, sync::Arc}; impl Future01 for Compat where diff --git a/futures-util/src/future/abortable.rs b/futures-util/src/future/abortable.rs index f4786a6721..35ba071d79 100644 --- a/futures-util/src/future/abortable.rs +++ b/futures-util/src/future/abortable.rs @@ -3,7 +3,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::Arc; use std::sync::atomic::{AtomicBool, Ordering}; diff --git a/futures-util/src/future/catch_unwind.rs b/futures-util/src/future/catch_unwind.rs index 6c6263c63b..0b26793d50 100644 --- a/futures-util/src/future/catch_unwind.rs +++ b/futures-util/src/future/catch_unwind.rs @@ -2,7 +2,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; use std::any::Any; -use std::mem::PinMut; +use std::pin::PinMut; use std::panic::{catch_unwind, UnwindSafe, AssertUnwindSafe}; use std::prelude::v1::*; diff --git a/futures-util/src/future/chain.rs b/futures-util/src/future/chain.rs index 026abd7472..096244de58 100644 --- a/futures-util/src/future/chain.rs +++ b/futures-util/src/future/chain.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/empty.rs b/futures-util/src/future/empty.rs index e2c796bb7a..a5b89b6feb 100644 --- a/futures-util/src/future/empty.rs +++ b/futures-util/src/future/empty.rs @@ -1,5 +1,5 @@ use core::marker; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/flatten.rs b/futures-util/src/future/flatten.rs index 58b36ab828..66a131acad 100644 --- a/futures-util/src/future/flatten.rs +++ b/futures-util/src/future/flatten.rs @@ -1,6 +1,6 @@ use super::chain::Chain; use core::fmt; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/future/flatten_stream.rs b/futures-util/src/future/flatten_stream.rs index a5e1a51d80..ace1bc7d3d 100644 --- a/futures-util/src/future/flatten_stream.rs +++ b/futures-util/src/future/flatten_stream.rs @@ -1,5 +1,5 @@ use core::fmt; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/fuse.rs b/futures-util/src/future/fuse.rs index 1655534a88..b421063a3f 100644 --- a/futures-util/src/future/fuse.rs +++ b/futures-util/src/future/fuse.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/future/inspect.rs b/futures-util/src/future/inspect.rs index 2680c29ca7..fd8307d419 100644 --- a/futures-util/src/future/inspect.rs +++ b/futures-util/src/future/inspect.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/future/into_stream.rs b/futures-util/src/future/into_stream.rs index 0bc388efac..57e25a00b9 100644 --- a/futures-util/src/future/into_stream.rs +++ b/futures-util/src/future/into_stream.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/join.rs b/futures-util/src/future/join.rs index e2e66a6fef..b84c7b10ce 100644 --- a/futures-util/src/future/join.rs +++ b/futures-util/src/future/join.rs @@ -2,7 +2,7 @@ use crate::future::{MaybeDone, maybe_done}; use core::fmt; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/future/lazy.rs b/futures-util/src/future/lazy.rs index 3ac24f3ae6..90b8aee960 100644 --- a/futures-util/src/future/lazy.rs +++ b/futures-util/src/future/lazy.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/map.rs b/futures-util/src/future/map.rs index 569de00b82..b77be1575c 100644 --- a/futures-util/src/future/map.rs +++ b/futures-util/src/future/map.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/future/maybe_done.rs b/futures-util/src/future/maybe_done.rs index 7611424e6e..12a16ebb66 100644 --- a/futures-util/src/future/maybe_done.rs +++ b/futures-util/src/future/maybe_done.rs @@ -1,7 +1,8 @@ //! Definition of the MaybeDone combinator use core::marker::Unpin; -use core::mem::{self, PinMut}; +use core::mem; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/mod.rs b/futures-util/src/future/mod.rs index 9ef97724dd..3b45cdfe9f 100644 --- a/futures-util/src/future/mod.rs +++ b/futures-util/src/future/mod.rs @@ -4,7 +4,7 @@ //! including the `FutureExt` trait which adds methods to `Future` types. use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll, Spawn}; @@ -68,7 +68,7 @@ mod chain; crate use self::chain::Chain; if_std! { - use std::boxed::PinBox; + use std::pin::PinBox; mod abortable; pub use self::abortable::{abortable, Abortable, AbortHandle, AbortRegistration, Aborted}; diff --git a/futures-util/src/future/option.rs b/futures-util/src/future/option.rs index 1b059500c5..787dee5d60 100644 --- a/futures-util/src/future/option.rs +++ b/futures-util/src/future/option.rs @@ -1,6 +1,6 @@ //! Definition of the `Option` (optional step) combinator -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/future/poll_fn.rs b/futures-util/src/future/poll_fn.rs index 507f53e707..80d2a55047 100644 --- a/futures-util/src/future/poll_fn.rs +++ b/futures-util/src/future/poll_fn.rs @@ -1,7 +1,7 @@ //! Definition of the `PollFn` adapter combinator use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/ready.rs b/futures-util/src/future/ready.rs index c20c222150..01b062c34b 100644 --- a/futures-util/src/future/ready.rs +++ b/futures-util/src/future/ready.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/future/shared.rs b/futures-util/src/future/shared.rs index 98a56a3992..7ce1179aa6 100644 --- a/futures-util/src/future/shared.rs +++ b/futures-util/src/future/shared.rs @@ -4,7 +4,7 @@ use slab::Slab; use std::fmt; use std::cell::UnsafeCell; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::{Arc, Mutex}; use std::sync::atomic::AtomicUsize; use std::sync::atomic::Ordering::SeqCst; diff --git a/futures-util/src/future/then.rs b/futures-util/src/future/then.rs index ad0400f098..8f735126bf 100644 --- a/futures-util/src/future/then.rs +++ b/futures-util/src/future/then.rs @@ -1,5 +1,5 @@ use super::Chain; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/future/unit_error.rs b/futures-util/src/future/unit_error.rs index 5a2974b0d5..3b57e9a8f4 100644 --- a/futures-util/src/future/unit_error.rs +++ b/futures-util/src/future/unit_error.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/future/with_spawner.rs b/futures-util/src/future/with_spawner.rs index c3227bd5d2..c6d23d6234 100644 --- a/futures-util/src/future/with_spawner.rs +++ b/futures-util/src/future/with_spawner.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll, Spawn}; diff --git a/futures-util/src/io/close.rs b/futures-util/src/io/close.rs index 33d2fd0186..3d1010f275 100644 --- a/futures-util/src/io/close.rs +++ b/futures-util/src/io/close.rs @@ -3,7 +3,7 @@ use futures_core::task::{self, Poll}; use futures_io::AsyncWrite; use std::io; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// A future used to fully close an I/O object. /// diff --git a/futures-util/src/io/copy_into.rs b/futures-util/src/io/copy_into.rs index ea71ff643d..601859a7e0 100644 --- a/futures-util/src/io/copy_into.rs +++ b/futures-util/src/io/copy_into.rs @@ -4,7 +4,7 @@ use futures_io::{AsyncRead, AsyncWrite}; use std::boxed::Box; use std::io; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// A future which will copy all data from a reader into a writer. /// diff --git a/futures-util/src/io/flush.rs b/futures-util/src/io/flush.rs index 269cbf4c5a..aba347599a 100644 --- a/futures-util/src/io/flush.rs +++ b/futures-util/src/io/flush.rs @@ -2,7 +2,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; use std::io; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use futures_io::AsyncWrite; diff --git a/futures-util/src/io/read.rs b/futures-util/src/io/read.rs index fd3a72575a..5a30cd7395 100644 --- a/futures-util/src/io/read.rs +++ b/futures-util/src/io/read.rs @@ -3,7 +3,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; use std::io; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// A future which can be used to easily read available number of bytes to fill /// a buffer. diff --git a/futures-util/src/io/read_exact.rs b/futures-util/src/io/read_exact.rs index c57753e3d0..4a34ea70cb 100644 --- a/futures-util/src/io/read_exact.rs +++ b/futures-util/src/io/read_exact.rs @@ -3,7 +3,8 @@ use futures_core::future::Future; use futures_core::task::{self, Poll}; use std::io; use std::marker::Unpin; -use std::mem::{self, PinMut}; +use std::mem; +use std::pin::PinMut; /// A future which can be used to easily read exactly enough bytes to fill /// a buffer. diff --git a/futures-util/src/io/read_to_end.rs b/futures-util/src/io/read_to_end.rs index be0a1ca08a..1294e7be08 100644 --- a/futures-util/src/io/read_to_end.rs +++ b/futures-util/src/io/read_to_end.rs @@ -3,7 +3,7 @@ use futures_core::task::{self, Poll}; use futures_io::AsyncRead; use std::io; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::vec::Vec; /// A future which can be used to easily read the entire contents of a stream diff --git a/futures-util/src/io/split.rs b/futures-util/src/io/split.rs index cd38d71e84..4f1e84b9b9 100644 --- a/futures-util/src/io/split.rs +++ b/futures-util/src/io/split.rs @@ -2,7 +2,7 @@ use crate::lock::BiLock; use futures_core::task::{self, Poll}; use futures_io::{AsyncRead, AsyncWrite, IoVec}; use std::io; -use std::mem::PinMut; +use std::pin::PinMut; /// The readable half of an object returned from `AsyncRead::split`. #[derive(Debug)] diff --git a/futures-util/src/io/write_all.rs b/futures-util/src/io/write_all.rs index 754e73094d..f8147ade30 100644 --- a/futures-util/src/io/write_all.rs +++ b/futures-util/src/io/write_all.rs @@ -3,7 +3,8 @@ use futures_core::task::{self, Poll}; use futures_io::AsyncWrite; use std::io; use std::marker::Unpin; -use std::mem::{self, PinMut}; +use std::mem; +use std::pin::PinMut; /// A future used to write the entire contents of some data to a stream. /// diff --git a/futures-util/src/lock.rs b/futures-util/src/lock.rs index 9c9b907b02..773b583517 100644 --- a/futures-util/src/lock.rs +++ b/futures-util/src/lock.rs @@ -9,8 +9,9 @@ use std::cell::UnsafeCell; use std::error::Error; use std::fmt; use std::marker::Unpin; -use std::mem::{self, PinMut}; +use std::mem; use std::ops::{Deref, DerefMut}; +use std::pin::PinMut; use std::sync::Arc; use std::sync::atomic::AtomicUsize; use std::sync::atomic::Ordering::SeqCst; diff --git a/futures-util/src/sink/buffer.rs b/futures-util/src/sink/buffer.rs index 792fc741a5..44d7736326 100644 --- a/futures-util/src/sink/buffer.rs +++ b/futures-util/src/sink/buffer.rs @@ -4,7 +4,7 @@ use futures_sink::Sink; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::collections::VecDeque; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// Sink for the `Sink::buffer` combinator, which buffers up to some fixed /// number of values when the underlying sink is unable to accept them. diff --git a/futures-util/src/sink/close.rs b/futures-util/src/sink/close.rs index 5c5965f0bb..e88cf2a0bc 100644 --- a/futures-util/src/sink/close.rs +++ b/futures-util/src/sink/close.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/sink/drain.rs b/futures-util/src/sink/drain.rs index 9940bfbf56..cbc56aa64e 100644 --- a/futures-util/src/sink/drain.rs +++ b/futures-util/src/sink/drain.rs @@ -1,6 +1,6 @@ use core::fmt; use core::marker::PhantomData; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/sink/err_into.rs b/futures-util/src/sink/err_into.rs index d30dd45cbd..4d17738f71 100644 --- a/futures-util/src/sink/err_into.rs +++ b/futures-util/src/sink/err_into.rs @@ -1,5 +1,5 @@ use crate::sink::{SinkExt, SinkMapErr}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use futures_sink::{Sink}; diff --git a/futures-util/src/sink/fanout.rs b/futures-util/src/sink/fanout.rs index 875cd4d9f0..87a39f8f2c 100644 --- a/futures-util/src/sink/fanout.rs +++ b/futures-util/src/sink/fanout.rs @@ -1,5 +1,5 @@ use core::fmt::{Debug, Formatter, Result as FmtResult}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::task::{self, Poll}; use futures_sink::Sink; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/sink/flush.rs b/futures-util/src/sink/flush.rs index ad48165ec0..42ef6ef957 100644 --- a/futures-util/src/sink/flush.rs +++ b/futures-util/src/sink/flush.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/sink/map_err.rs b/futures-util/src/sink/map_err.rs index 62c56d1d5e..b481569e10 100644 --- a/futures-util/src/sink/map_err.rs +++ b/futures-util/src/sink/map_err.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use futures_sink::{Sink}; diff --git a/futures-util/src/sink/send.rs b/futures-util/src/sink/send.rs index 0359ad05bc..3d09e3d9a4 100644 --- a/futures-util/src/sink/send.rs +++ b/futures-util/src/sink/send.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/sink/send_all.rs b/futures-util/src/sink/send_all.rs index 74be381736..f6f57381c8 100644 --- a/futures-util/src/sink/send_all.rs +++ b/futures-util/src/sink/send_all.rs @@ -1,6 +1,6 @@ use crate::stream::{StreamExt, Fuse}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/sink/with.rs b/futures-util/src/sink/with.rs index bc3a0823a0..cd29a6f7de 100644 --- a/futures-util/src/sink/with.rs +++ b/futures-util/src/sink/with.rs @@ -1,5 +1,6 @@ use core::marker::{Unpin, PhantomData}; -use core::mem::{self, PinMut}; +use core::mem; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/sink/with_flat_map.rs b/futures-util/src/sink/with_flat_map.rs index 25cb1ad0d3..d0cb1216f1 100644 --- a/futures-util/src/sink/with_flat_map.rs +++ b/futures-util/src/sink/with_flat_map.rs @@ -1,5 +1,5 @@ use core::marker::{Unpin, PhantomData}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/stream/buffer_unordered.rs b/futures-util/src/stream/buffer_unordered.rs index c9fa5251fb..d882ad6a35 100644 --- a/futures-util/src/stream/buffer_unordered.rs +++ b/futures-util/src/stream/buffer_unordered.rs @@ -6,7 +6,7 @@ use futures_sink::Sink; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::fmt; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// An adaptor for a stream of futures to execute the futures concurrently, if /// possible, delivering results as they become available. diff --git a/futures-util/src/stream/buffered.rs b/futures-util/src/stream/buffered.rs index 68832eb5ce..5b088d57e1 100644 --- a/futures-util/src/stream/buffered.rs +++ b/futures-util/src/stream/buffered.rs @@ -6,7 +6,7 @@ use futures_sink::Sink; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::fmt; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// An adaptor for a stream of futures to execute the futures concurrently, if /// possible. diff --git a/futures-util/src/stream/catch_unwind.rs b/futures-util/src/stream/catch_unwind.rs index 6785a33496..579fa34478 100644 --- a/futures-util/src/stream/catch_unwind.rs +++ b/futures-util/src/stream/catch_unwind.rs @@ -2,7 +2,7 @@ use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::any::Any; -use std::mem::PinMut; +use std::pin::PinMut; use std::panic::{catch_unwind, UnwindSafe, AssertUnwindSafe}; use std::prelude::v1::*; diff --git a/futures-util/src/stream/chain.rs b/futures-util/src/stream/chain.rs index 8f11e7803f..0da35f4ab4 100644 --- a/futures-util/src/stream/chain.rs +++ b/futures-util/src/stream/chain.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/stream/chunks.rs b/futures-util/src/stream/chunks.rs index 3f28c3b480..9aecc9542e 100644 --- a/futures-util/src/stream/chunks.rs +++ b/futures-util/src/stream/chunks.rs @@ -3,7 +3,8 @@ use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::marker::Unpin; -use std::mem::{self, PinMut}; +use std::mem; +use std::pin::PinMut; use std::prelude::v1::*; /// An adaptor that chunks up elements in a vector. diff --git a/futures-util/src/stream/collect.rs b/futures-util/src/stream/collect.rs index c3dda9dad5..991d6fbb68 100644 --- a/futures-util/src/stream/collect.rs +++ b/futures-util/src/stream/collect.rs @@ -3,7 +3,8 @@ use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::marker::Unpin; -use std::mem::{self, PinMut}; +use std::mem; +use std::pin::PinMut; use std::prelude::v1::*; /// A future which collects all of the values of a stream into a vector. diff --git a/futures-util/src/stream/concat.rs b/futures-util/src/stream/concat.rs index 384f01b311..39a7ac8278 100644 --- a/futures-util/src/stream/concat.rs +++ b/futures-util/src/stream/concat.rs @@ -1,6 +1,6 @@ use core::fmt::{Debug, Formatter, Result as FmtResult}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use core::default::Default; use futures_core::future::Future; use futures_core::stream::Stream; diff --git a/futures-util/src/stream/disabled/select_all.rs b/futures-util/src/stream/disabled/select_all.rs index 97727b1128..5360402494 100644 --- a/futures-util/src/stream/disabled/select_all.rs +++ b/futures-util/src/stream/disabled/select_all.rs @@ -1,7 +1,7 @@ //! An unbounded set of streams use std::fmt::{self, Debug}; -use std::mem::PinMut; +use std::pin::PinMut; use futures_core::{Poll, Stream}; use futures_core::task; diff --git a/futures-util/src/stream/empty.rs b/futures-util/src/stream/empty.rs index cfb9603b34..5571c64ff2 100644 --- a/futures-util/src/stream/empty.rs +++ b/futures-util/src/stream/empty.rs @@ -1,5 +1,5 @@ use core::marker::{Unpin, PhantomData}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/filter.rs b/futures-util/src/stream/filter.rs index f1b7132265..75489fc019 100644 --- a/futures-util/src/stream/filter.rs +++ b/futures-util/src/stream/filter.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/filter_map.rs b/futures-util/src/stream/filter_map.rs index 35d2c57190..acb642396d 100644 --- a/futures-util/src/stream/filter_map.rs +++ b/futures-util/src/stream/filter_map.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/flatten.rs b/futures-util/src/stream/flatten.rs index b027b5b86b..cd70f72100 100644 --- a/futures-util/src/stream/flatten.rs +++ b/futures-util/src/stream/flatten.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/stream/fold.rs b/futures-util/src/stream/fold.rs index e65a23dc9d..bb2e8fb974 100644 --- a/futures-util/src/stream/fold.rs +++ b/futures-util/src/stream/fold.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/for_each.rs b/futures-util/src/stream/for_each.rs index 5dcfd1a48b..a7296b8aa9 100644 --- a/futures-util/src/stream/for_each.rs +++ b/futures-util/src/stream/for_each.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/for_each_concurrent.rs b/futures-util/src/stream/for_each_concurrent.rs index 3d42aeee6d..5363a9e526 100644 --- a/futures-util/src/stream/for_each_concurrent.rs +++ b/futures-util/src/stream/for_each_concurrent.rs @@ -1,6 +1,6 @@ use crate::stream::{FuturesUnordered, StreamExt}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use core::num::NonZeroUsize; use futures_core::future::Future; use futures_core::stream::Stream; diff --git a/futures-util/src/stream/forward.rs b/futures-util/src/stream/forward.rs index 603612e7e6..ab6bc32fb9 100644 --- a/futures-util/src/stream/forward.rs +++ b/futures-util/src/stream/forward.rs @@ -1,6 +1,6 @@ use crate::stream::{StreamExt, Fuse}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/fuse.rs b/futures-util/src/stream/fuse.rs index 3d1ed5a61e..f4fd61849f 100644 --- a/futures-util/src/stream/fuse.rs +++ b/futures-util/src/stream/fuse.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/stream/futures_ordered.rs b/futures-util/src/stream/futures_ordered.rs index 5e77051542..857577e627 100644 --- a/futures-util/src/stream/futures_ordered.rs +++ b/futures-util/src/stream/futures_ordered.rs @@ -8,7 +8,7 @@ use std::collections::binary_heap::{BinaryHeap, PeekMut}; use std::fmt::{self, Debug}; use std::iter::FromIterator; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; #[must_use = "futures do nothing unless polled"] #[derive(Debug)] diff --git a/futures-util/src/stream/futures_unordered/iter.rs b/futures-util/src/stream/futures_unordered/iter.rs index 647b5604ca..53ca3341f2 100644 --- a/futures-util/src/stream/futures_unordered/iter.rs +++ b/futures-util/src/stream/futures_unordered/iter.rs @@ -1,7 +1,7 @@ use super::FuturesUnordered; use super::task::Task; use std::marker::{PhantomData, Unpin}; -use std::mem::PinMut; +use std::pin::PinMut; #[derive(Debug)] /// Mutable iterator over all futures in the unordered set. diff --git a/futures-util/src/stream/futures_unordered/mod.rs b/futures-util/src/stream/futures_unordered/mod.rs index 43439a4033..be54afc36d 100644 --- a/futures-util/src/stream/futures_unordered/mod.rs +++ b/futures-util/src/stream/futures_unordered/mod.rs @@ -8,7 +8,8 @@ use std::cell::UnsafeCell; use std::fmt::{self, Debug}; use std::iter::FromIterator; use std::marker::{PhantomData, Unpin}; -use std::mem::{self, PinMut}; +use std::mem; +use std::pin::PinMut; use std::ptr; use std::sync::atomic::Ordering::SeqCst; use std::sync::atomic::{AtomicPtr, AtomicBool}; diff --git a/futures-util/src/stream/inspect.rs b/futures-util/src/stream/inspect.rs index 02c96a4d6f..aee6bd00b7 100644 --- a/futures-util/src/stream/inspect.rs +++ b/futures-util/src/stream/inspect.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/stream/into_future.rs b/futures-util/src/stream/into_future.rs index 395be52334..a864fc3ab8 100644 --- a/futures-util/src/stream/into_future.rs +++ b/futures-util/src/stream/into_future.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/iter.rs b/futures-util/src/stream/iter.rs index 375db18021..3fe81d59e6 100644 --- a/futures-util/src/stream/iter.rs +++ b/futures-util/src/stream/iter.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/map.rs b/futures-util/src/stream/map.rs index 7473dc9a9f..9fd2ef2406 100644 --- a/futures-util/src/stream/map.rs +++ b/futures-util/src/stream/map.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/stream/mod.rs b/futures-util/src/stream/mod.rs index add8455020..e524fc0503 100644 --- a/futures-util/src/stream/mod.rs +++ b/futures-util/src/stream/mod.rs @@ -4,7 +4,7 @@ //! including the `StreamExt` trait which adds methods to `Stream` types. use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use either::Either; use futures_core::future::Future; use futures_core::stream::Stream; @@ -94,8 +94,8 @@ pub use self::zip::Zip; if_std! { use std; - use std::boxed::PinBox; use std::iter::Extend; + use std::pin::PinBox; mod buffer_unordered; pub use self::buffer_unordered::BufferUnordered; diff --git a/futures-util/src/stream/next.rs b/futures-util/src/stream/next.rs index 1ca37a13b3..0d9537e8cf 100644 --- a/futures-util/src/stream/next.rs +++ b/futures-util/src/stream/next.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/once.rs b/futures-util/src/stream/once.rs index fc655cd7f7..8139678905 100644 --- a/futures-util/src/stream/once.rs +++ b/futures-util/src/stream/once.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/peek.rs b/futures-util/src/stream/peek.rs index ca3de304db..4cc1380ec6 100644 --- a/futures-util/src/stream/peek.rs +++ b/futures-util/src/stream/peek.rs @@ -1,6 +1,6 @@ use crate::stream::{StreamExt, Fuse}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/stream/poll_fn.rs b/futures-util/src/stream/poll_fn.rs index 1c55239023..e327a3c176 100644 --- a/futures-util/src/stream/poll_fn.rs +++ b/futures-util/src/stream/poll_fn.rs @@ -1,7 +1,7 @@ //! Definition of the `PollFn` combinator use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/repeat.rs b/futures-util/src/stream/repeat.rs index aeaccb0799..ab8245eab5 100644 --- a/futures-util/src/stream/repeat.rs +++ b/futures-util/src/stream/repeat.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/select.rs b/futures-util/src/stream/select.rs index 36f1bc42fc..566db8ec15 100644 --- a/futures-util/src/stream/select.rs +++ b/futures-util/src/stream/select.rs @@ -1,6 +1,6 @@ use crate::stream::{StreamExt, Fuse}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/skip.rs b/futures-util/src/stream/skip.rs index ac718dc620..8ae14036e7 100644 --- a/futures-util/src/stream/skip.rs +++ b/futures-util/src/stream/skip.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/stream/skip_while.rs b/futures-util/src/stream/skip_while.rs index 4bf4d0e226..90ee4ece3f 100644 --- a/futures-util/src/stream/skip_while.rs +++ b/futures-util/src/stream/skip_while.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/split.rs b/futures-util/src/stream/split.rs index 5dc0a46197..10d71fc477 100644 --- a/futures-util/src/stream/split.rs +++ b/futures-util/src/stream/split.rs @@ -5,7 +5,7 @@ use std::any::Any; use std::error::Error; use std::fmt; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use crate::lock::BiLock; diff --git a/futures-util/src/stream/take.rs b/futures-util/src/stream/take.rs index af96be6fe9..d0e46ea1af 100644 --- a/futures-util/src/stream/take.rs +++ b/futures-util/src/stream/take.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/stream/take_while.rs b/futures-util/src/stream/take_while.rs index 6455958f15..a7939ce652 100644 --- a/futures-util/src/stream/take_while.rs +++ b/futures-util/src/stream/take_while.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/then.rs b/futures-util/src/stream/then.rs index 5411884eac..f9438cea5c 100644 --- a/futures-util/src/stream/then.rs +++ b/futures-util/src/stream/then.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/unfold.rs b/futures-util/src/stream/unfold.rs index cbb4e58e0d..6e32a94164 100644 --- a/futures-util/src/stream/unfold.rs +++ b/futures-util/src/stream/unfold.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::Future; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/stream/zip.rs b/futures-util/src/stream/zip.rs index d5e5af6280..42886c5a5d 100644 --- a/futures-util/src/stream/zip.rs +++ b/futures-util/src/stream/zip.rs @@ -1,6 +1,6 @@ use crate::stream::{StreamExt, Fuse}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::Stream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/task/atomic_waker.rs b/futures-util/src/task/atomic_waker.rs index 272b239854..6767ce0b19 100755 --- a/futures-util/src/task/atomic_waker.rs +++ b/futures-util/src/task/atomic_waker.rs @@ -174,7 +174,7 @@ impl AtomicWaker { /// use futures::task::{self, Poll, AtomicWaker}; /// use std::sync::atomic::AtomicBool; /// use std::sync::atomic::Ordering::SeqCst; - /// use std::mem::PinMut; + /// use std::pin::PinMut; /// /// struct Flag { /// waker: AtomicWaker, diff --git a/futures-util/src/task/spawn/spawn_with_handle.rs b/futures-util/src/task/spawn/spawn_with_handle.rs index 1dd63f9a6d..99a4df77f1 100644 --- a/futures-util/src/task/spawn/spawn_with_handle.rs +++ b/futures-util/src/task/spawn/spawn_with_handle.rs @@ -5,7 +5,7 @@ use futures_core::future::Future; use futures_core::task::{self, Poll, Spawn, SpawnObjError}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; use std::panic::{self, AssertUnwindSafe}; use std::sync::Arc; use std::sync::atomic::{AtomicBool, Ordering}; diff --git a/futures-util/src/try_future/and_then.rs b/futures-util/src/try_future/and_then.rs index e9c380d5ea..49666791d2 100644 --- a/futures-util/src/try_future/and_then.rs +++ b/futures-util/src/try_future/and_then.rs @@ -1,5 +1,5 @@ use super::{TryChain, TryChainAction}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_future/err_into.rs b/futures-util/src/try_future/err_into.rs index 26f5e734b4..7dcdd2c244 100644 --- a/futures-util/src/try_future/err_into.rs +++ b/futures-util/src/try_future/err_into.rs @@ -1,5 +1,5 @@ use core::marker::{PhantomData, Unpin}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_future/flatten_sink.rs b/futures-util/src/try_future/flatten_sink.rs index 1f8b8be48f..af4e5d8557 100644 --- a/futures-util/src/try_future/flatten_sink.rs +++ b/futures-util/src/try_future/flatten_sink.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::TryFuture; use futures_core::task::{self, Poll}; use futures_sink::Sink; diff --git a/futures-util/src/try_future/into_future.rs b/futures-util/src/try_future/into_future.rs index 1bf56e4012..313e84e89b 100644 --- a/futures-util/src/try_future/into_future.rs +++ b/futures-util/src/try_future/into_future.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_future/map_err.rs b/futures-util/src/try_future/map_err.rs index 2c47ff1833..c1bc17d7df 100644 --- a/futures-util/src/try_future/map_err.rs +++ b/futures-util/src/try_future/map_err.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/try_future/map_ok.rs b/futures-util/src/try_future/map_ok.rs index b23d1129be..20e6122455 100644 --- a/futures-util/src/try_future/map_ok.rs +++ b/futures-util/src/try_future/map_ok.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/try_future/or_else.rs b/futures-util/src/try_future/or_else.rs index 35e4713002..6c7e4b6402 100644 --- a/futures-util/src/try_future/or_else.rs +++ b/futures-util/src/try_future/or_else.rs @@ -1,5 +1,5 @@ use super::{TryChain, TryChainAction}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_future/try_chain.rs b/futures-util/src/try_future/try_chain.rs index 56dfa9d55f..acca39124b 100644 --- a/futures-util/src/try_future/try_chain.rs +++ b/futures-util/src/try_future/try_chain.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::TryFuture; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/try_future/try_join.rs b/futures-util/src/try_future/try_join.rs index 23f09b903a..f4aa7f7dc7 100644 --- a/futures-util/src/try_future/try_join.rs +++ b/futures-util/src/try_future/try_join.rs @@ -3,7 +3,7 @@ use crate::future::{MaybeDone, maybe_done}; use crate::try_future::{TryFutureExt, IntoFuture}; use core::fmt; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_future/unwrap_or_else.rs b/futures-util/src/try_future/unwrap_or_else.rs index a229accb0d..ed8dde9ff1 100644 --- a/futures-util/src/try_future/unwrap_or_else.rs +++ b/futures-util/src/try_future/unwrap_or_else.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/try_stream/err_into.rs b/futures-util/src/try_stream/err_into.rs index 3c1fe28c2c..0f338fcc23 100644 --- a/futures-util/src/try_stream/err_into.rs +++ b/futures-util/src/try_stream/err_into.rs @@ -1,5 +1,5 @@ use core::marker::{PhantomData, Unpin}; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_stream/into_stream.rs b/futures-util/src/try_stream/into_stream.rs index 428d52dcde..57e3d0b7f4 100644 --- a/futures-util/src/try_stream/into_stream.rs +++ b/futures-util/src/try_stream/into_stream.rs @@ -1,4 +1,4 @@ -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; use pin_utils::unsafe_pinned; diff --git a/futures-util/src/try_stream/map_err.rs b/futures-util/src/try_stream/map_err.rs index 57f6ccb8a8..648965beb1 100644 --- a/futures-util/src/try_stream/map_err.rs +++ b/futures-util/src/try_stream/map_err.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/try_stream/map_ok.rs b/futures-util/src/try_stream/map_ok.rs index 9236fdb80c..b61915a5c2 100644 --- a/futures-util/src/try_stream/map_ok.rs +++ b/futures-util/src/try_stream/map_ok.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; diff --git a/futures-util/src/try_stream/try_buffer_unordered.rs b/futures-util/src/try_stream/try_buffer_unordered.rs index c6032427e9..4128e7cd3a 100644 --- a/futures-util/src/try_stream/try_buffer_unordered.rs +++ b/futures-util/src/try_stream/try_buffer_unordered.rs @@ -6,7 +6,7 @@ use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::marker::Unpin; -use std::mem::PinMut; +use std::pin::PinMut; /// A stream returned by the /// [`try_buffer_unordered`](super::TryStreamExt::try_buffer_unordered) method diff --git a/futures-util/src/try_stream/try_collect.rs b/futures-util/src/try_stream/try_collect.rs index 16aa403842..eb7cdf575f 100644 --- a/futures-util/src/try_stream/try_collect.rs +++ b/futures-util/src/try_stream/try_collect.rs @@ -3,7 +3,8 @@ use futures_core::stream::TryStream; use futures_core::task::{self, Poll}; use pin_utils::{unsafe_pinned, unsafe_unpinned}; use std::marker::Unpin; -use std::mem::{self, PinMut}; +use std::mem; +use std::pin::PinMut; use std::prelude::v1::*; /// A future which attempts to collect all of the values of a stream. diff --git a/futures-util/src/try_stream/try_filter_map.rs b/futures-util/src/try_stream/try_filter_map.rs index 4532e87aca..534a09e6dc 100644 --- a/futures-util/src/try_stream/try_filter_map.rs +++ b/futures-util/src/try_stream/try_filter_map.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{TryFuture}; use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/try_stream/try_fold.rs b/futures-util/src/try_stream/try_fold.rs index b3ac394722..6da4a4563b 100644 --- a/futures-util/src/try_stream/try_fold.rs +++ b/futures-util/src/try_stream/try_fold.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::stream::TryStream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/try_stream/try_for_each.rs b/futures-util/src/try_stream/try_for_each.rs index c3409ee86d..63f54a1b84 100644 --- a/futures-util/src/try_stream/try_for_each.rs +++ b/futures-util/src/try_stream/try_for_each.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::{Future, TryFuture}; use futures_core::stream::TryStream; use futures_core::task::{self, Poll}; diff --git a/futures-util/src/try_stream/try_for_each_concurrent.rs b/futures-util/src/try_stream/try_for_each_concurrent.rs index a59f0c9966..229c4c97ba 100644 --- a/futures-util/src/try_stream/try_for_each_concurrent.rs +++ b/futures-util/src/try_stream/try_for_each_concurrent.rs @@ -1,6 +1,6 @@ use crate::stream::{FuturesUnordered, StreamExt}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use core::num::NonZeroUsize; use futures_core::future::Future; use futures_core::stream::TryStream; diff --git a/futures-util/src/try_stream/try_next.rs b/futures-util/src/try_stream/try_next.rs index e741b9b0e5..0a1c978e67 100644 --- a/futures-util/src/try_stream/try_next.rs +++ b/futures-util/src/try_stream/try_next.rs @@ -2,7 +2,7 @@ use futures_core::future::Future; use futures_core::stream::TryStream; use futures_core::task::{self, Poll}; use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; /// A future which attempts to collect all of the values of a stream. /// diff --git a/futures-util/src/try_stream/try_skip_while.rs b/futures-util/src/try_stream/try_skip_while.rs index d1dfbb8677..307808940b 100644 --- a/futures-util/src/try_stream/try_skip_while.rs +++ b/futures-util/src/try_stream/try_skip_while.rs @@ -1,5 +1,5 @@ use core::marker::Unpin; -use core::mem::PinMut; +use core::pin::PinMut; use futures_core::future::TryFuture; use futures_core::stream::{Stream, TryStream}; use futures_core::task::{self, Poll}; diff --git a/futures/Cargo.toml b/futures/Cargo.toml index 4f20e19ffe..5b6e595032 100644 --- a/futures/Cargo.toml +++ b/futures/Cargo.toml @@ -33,7 +33,7 @@ futures-sink-preview = { path = "../futures-sink", version = "0.3.0-alpha.3", de futures-util-preview = { path = "../futures-util", version = "0.3.0-alpha.3", default-features = false } [dev-dependencies] -pin-utils = "0.1.0-alpha.1" +pin-utils = "0.1.0-alpha.2" futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.3", default-features = false } [features] diff --git a/futures/tests/eager_drop.rs b/futures/tests/eager_drop.rs index 7f9bff7d47..8ee5473038 100644 --- a/futures/tests/eager_drop.rs +++ b/futures/tests/eager_drop.rs @@ -5,7 +5,7 @@ use futures::future::{self, Future, FutureExt, TryFutureExt}; use futures::task::{self, Poll}; use futures_test::future::FutureTestExt; use pin_utils::unsafe_pinned; -use std::mem::PinMut; +use std::pin::PinMut; use std::sync::mpsc; #[test] diff --git a/futures/tests/split.rs b/futures/tests/split.rs index cb8419024b..7f4c0f4a72 100644 --- a/futures/tests/split.rs +++ b/futures/tests/split.rs @@ -5,7 +5,7 @@ use futures::sink::{Sink, SinkExt}; use futures::stream::{self, Stream, StreamExt}; use futures::task::{self, Poll}; use pin_utils::unsafe_pinned; -use std::mem::PinMut; +use std::pin::PinMut; struct Join { stream: T,