mirror of
https://github.com/tokio-rs/tokio.git
synced 2026-08-20 00:00:08 +02:00
chore: use ready macro from futures-core (#1300)
This commit is contained in:
committed by
Carl Lerche
parent
ca708d6d87
commit
83273b8b50
@@ -24,6 +24,7 @@ publish = false
|
||||
[dependencies]
|
||||
bytes = "0.4.7"
|
||||
log = "0.4"
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
[dev-dependencies]
|
||||
pin-utils = "0.1.0-alpha.4"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
//use crate::split::{ReadHalf, WriteHalf};
|
||||
//use crate::{framed, split, AsyncWrite};
|
||||
use bytes::BufMut;
|
||||
use futures_core::ready;
|
||||
use std::io;
|
||||
use std::ops::DerefMut;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
//use crate::AsyncRead;
|
||||
use bytes::Buf;
|
||||
use futures_core::ready;
|
||||
use std::io;
|
||||
use std::ops::DerefMut;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -12,15 +12,6 @@
|
||||
//! [found online]: https://tokio.rs/docs/
|
||||
//! [low level details]: https://tokio.rs/docs/going-deeper-tokio/core-low-level/
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
mod async_read;
|
||||
mod async_write;
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ slab = "0.4.0"
|
||||
tokio-executor = { version = "0.2.0", path = "../tokio-executor" }
|
||||
tokio-io = { version = "0.2.0", path = "../tokio-io" }
|
||||
tokio-sync = { version = "0.2.0", path = "../tokio-sync" }
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
[dev-dependencies]
|
||||
num_cpus = "1.8.0"
|
||||
|
||||
@@ -32,15 +32,6 @@
|
||||
//! [`PollEvented`]: struct.PollEvented.html
|
||||
//! [reactor module]: https://docs.rs/tokio/0.1/tokio/reactor/index.html
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(v) => v,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
mod poll_evented;
|
||||
mod registration;
|
||||
mod sharded_rwlock;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
use crate::{Handle, Registration};
|
||||
use futures_core::ready;
|
||||
use mio;
|
||||
use mio::event::Evented;
|
||||
use std::fmt;
|
||||
|
||||
@@ -22,13 +22,13 @@ categories = ["asynchronous"]
|
||||
publish = false
|
||||
|
||||
[features]
|
||||
async-traits = ["tokio-futures", "futures-core-preview"]
|
||||
async-traits = ["tokio-futures"]
|
||||
|
||||
[dependencies]
|
||||
async-util = { git = "https://github.com/tokio-rs/async" }
|
||||
tokio-futures = { path = "../tokio-futures", optional = true }
|
||||
fnv = "1.0.6"
|
||||
futures-core-preview = { version = "0.3.0-alpha.17", optional = true }
|
||||
futures-core-preview = { version = "0.3.0-alpha.17" }
|
||||
|
||||
[dev-dependencies]
|
||||
env_logger = { version = "0.5", default-features = false }
|
||||
|
||||
@@ -21,19 +21,6 @@ macro_rules! debug {
|
||||
}
|
||||
}
|
||||
|
||||
/// Unwrap a ready value or propagate `Poll::Pending`.
|
||||
#[macro_export]
|
||||
macro_rules! ready {
|
||||
($e:expr) => {{
|
||||
use std::task::Poll::{Pending, Ready};
|
||||
|
||||
match $e {
|
||||
Ready(v) => v,
|
||||
Pending => return Pending,
|
||||
}
|
||||
}};
|
||||
}
|
||||
|
||||
macro_rules! if_fuzz {
|
||||
($($t:tt)*) => {{
|
||||
if false { $($t)* }
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
|
||||
use crate::semaphore;
|
||||
|
||||
use futures_core::ready;
|
||||
use std::cell::UnsafeCell;
|
||||
use std::fmt;
|
||||
use std::future::Future;
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
use crate::loom::{sync::atomic::AtomicUsize, sync::CausalCell};
|
||||
|
||||
use futures_core::ready;
|
||||
use std::fmt;
|
||||
use std::future::Future;
|
||||
use std::mem::{self, ManuallyDrop};
|
||||
|
||||
@@ -58,6 +58,7 @@ use crate::task::AtomicWaker;
|
||||
use core::task::Poll::{Pending, Ready};
|
||||
use core::task::{Context, Poll};
|
||||
use fnv::FnvHashMap;
|
||||
use futures_core::ready;
|
||||
use std::ops;
|
||||
use std::sync::atomic::AtomicUsize;
|
||||
use std::sync::atomic::Ordering::SeqCst;
|
||||
|
||||
@@ -1,19 +1,6 @@
|
||||
#![deny(warnings, rust_2018_idioms)]
|
||||
#![feature(async_await)]
|
||||
|
||||
/// Unwrap a ready value or propagate `Async::Pending`.
|
||||
#[macro_export]
|
||||
macro_rules! ready {
|
||||
($e:expr) => {{
|
||||
use std::task::Poll::{Pending, Ready};
|
||||
|
||||
match $e {
|
||||
Ready(v) => v,
|
||||
Pending => return Pending,
|
||||
}
|
||||
}};
|
||||
}
|
||||
|
||||
#[path = "../src/oneshot.rs"]
|
||||
#[allow(warnings)]
|
||||
mod oneshot;
|
||||
|
||||
@@ -10,6 +10,7 @@ mod semaphore;
|
||||
use crate::semaphore::*;
|
||||
|
||||
use async_util::future::poll_fn;
|
||||
use futures_core::ready;
|
||||
use loom::futures::block_on;
|
||||
use loom::thread;
|
||||
use std::future::Future;
|
||||
@@ -20,19 +21,6 @@ use std::sync::Arc;
|
||||
use std::task::Poll::Ready;
|
||||
use std::task::{Context, Poll};
|
||||
|
||||
/// Unwrap a ready value or propagate `Poll::Pending`.
|
||||
#[macro_export]
|
||||
macro_rules! ready {
|
||||
($e:expr) => {{
|
||||
use std::task::Poll::{Pending, Ready};
|
||||
|
||||
match $e {
|
||||
Ready(v) => v,
|
||||
Pending => return Pending,
|
||||
}
|
||||
}};
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn basic_usage() {
|
||||
const NUM: usize = 2;
|
||||
|
||||
@@ -22,7 +22,7 @@ categories = ["asynchronous"]
|
||||
publish = false
|
||||
|
||||
[features]
|
||||
incoming = ["futures-core-preview"]
|
||||
incoming = []
|
||||
|
||||
[dependencies]
|
||||
async-util = { git = "https://github.com/tokio-rs/async" }
|
||||
@@ -33,7 +33,7 @@ mio = "0.6.14"
|
||||
iovec = "0.1"
|
||||
|
||||
# optionals
|
||||
futures-core-preview = { version = "0.3.0-alpha.17", optional = true }
|
||||
futures-core-preview = { version = "0.3.0-alpha.17" }
|
||||
|
||||
[dev-dependencies]
|
||||
#env_logger = { version = "0.5", default-features = false }
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use super::TcpListener;
|
||||
use super::TcpStream;
|
||||
use futures_core::ready;
|
||||
use futures_core::stream::Stream;
|
||||
use std::io;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -23,15 +23,6 @@
|
||||
//! [incoming_method]: struct.TcpListener.html#method.incoming
|
||||
//! [`Incoming`]: struct.Incoming.html
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#[cfg(feature = "incoming")]
|
||||
mod incoming;
|
||||
mod listener;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#[cfg(feature = "incoming")]
|
||||
use super::incoming::Incoming;
|
||||
use super::TcpStream;
|
||||
use futures_core::ready;
|
||||
use mio;
|
||||
use std::convert::TryFrom;
|
||||
use std::fmt;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use crate::split::{split, TcpStreamReadHalf, TcpStreamWriteHalf};
|
||||
use bytes::{Buf, BufMut};
|
||||
use futures_core::ready;
|
||||
use iovec::IoVec;
|
||||
use mio;
|
||||
use std::convert::TryFrom;
|
||||
|
||||
@@ -28,6 +28,7 @@ tokio-executor = { version = "0.2.0", path = "../tokio-executor" }
|
||||
tokio-io = { version = "0.2.0", path = "../tokio-io" }
|
||||
tokio-sync = { version = "0.2.0", path = "../tokio-sync" }
|
||||
tokio-timer = { version = "0.3.0", path = "../tokio-timer" }
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
[dev-dependencies]
|
||||
tokio = { path = "../tokio" }
|
||||
|
||||
@@ -20,6 +20,7 @@ use std::task::{self, Poll, Waker};
|
||||
use std::time::{Duration, Instant};
|
||||
use std::{cmp, io};
|
||||
|
||||
use futures_core::ready;
|
||||
use tokio_io::{AsyncRead, AsyncWrite};
|
||||
use tokio_sync::mpsc;
|
||||
use tokio_timer::{clock, timer, Delay};
|
||||
|
||||
@@ -20,15 +20,6 @@
|
||||
//! assert_ready!(fut.poll());
|
||||
//! ```
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
pub mod clock;
|
||||
pub mod io;
|
||||
mod macros;
|
||||
|
||||
@@ -25,6 +25,7 @@ publish = false
|
||||
[dependencies]
|
||||
tokio-executor = { version = "0.2.0", path = "../tokio-executor" }
|
||||
tokio-sync = { version = "0.2.0", path = "../tokio-sync" }
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
arc-waker = { git = "https://github.com/tokio-rs/async" }
|
||||
crossbeam-deque = "0.7.0"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use crate::worker::Worker;
|
||||
|
||||
use futures_core::ready;
|
||||
use std::error::Error;
|
||||
use std::fmt;
|
||||
use std::task::Poll;
|
||||
|
||||
@@ -131,15 +131,6 @@
|
||||
|
||||
pub mod park;
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
mod blocking;
|
||||
mod builder;
|
||||
mod callback;
|
||||
|
||||
@@ -5,6 +5,7 @@ use tokio_test::*;
|
||||
use tokio_threadpool::*;
|
||||
|
||||
use async_util::future::poll_fn;
|
||||
use futures_core::ready;
|
||||
use rand::*;
|
||||
use std::sync::atomic::Ordering::*;
|
||||
use std::sync::atomic::*;
|
||||
@@ -13,15 +14,6 @@ use std::task::{Poll, Waker};
|
||||
use std::thread;
|
||||
use std::time::Duration;
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn basic() {
|
||||
let _ = ::env_logger::try_init();
|
||||
|
||||
@@ -22,18 +22,18 @@ Timer facilities for Tokio
|
||||
publish = false
|
||||
|
||||
[features]
|
||||
async-traits = ["futures-core-preview"]
|
||||
async-traits = []
|
||||
|
||||
[dependencies]
|
||||
tokio-executor = { version = "0.2.0", path = "../tokio-executor" }
|
||||
tokio-sync = { version = "0.2.0", path = "../tokio-sync" }
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
async-util = { git = "https://github.com/tokio-rs/async" }
|
||||
crossbeam-utils = "0.6.0"
|
||||
# Backs `DelayQueue`
|
||||
slab = "0.4.1"
|
||||
# optionals
|
||||
futures-core-preview = { version = "0.3.0-alpha.17", optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
rand = "0.7"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
use crate::timer::{HandlePriv, Registration};
|
||||
use futures_core::ready;
|
||||
use std::future::Future;
|
||||
use std::pin::Pin;
|
||||
use std::task::{self, Poll};
|
||||
|
||||
@@ -9,6 +9,7 @@ use crate::timer::Handle;
|
||||
use crate::wheel::{self, Wheel};
|
||||
use crate::{Delay, Error};
|
||||
|
||||
use futures_core::ready;
|
||||
use slab::Slab;
|
||||
use std::cmp;
|
||||
use std::future::Future;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
use crate::clock;
|
||||
use crate::Delay;
|
||||
|
||||
use futures_core::ready;
|
||||
use std::future::Future;
|
||||
use std::pin::Pin;
|
||||
use std::task::{self, Poll};
|
||||
|
||||
@@ -32,15 +32,6 @@
|
||||
//! [`Interval`]: struct.Interval.html
|
||||
//! [`Timer`]: timer/struct.Timer.html
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(v) => v,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
pub mod clock;
|
||||
pub mod delay_queue;
|
||||
#[cfg(feature = "async-traits")]
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
//! Slow down a stream by enforcing a delay between items.
|
||||
|
||||
use crate::{clock, Delay};
|
||||
use futures_core::ready;
|
||||
use futures_core::Stream;
|
||||
use std::{
|
||||
future::Future,
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
|
||||
use crate::clock::now;
|
||||
use crate::Delay;
|
||||
#[cfg(feature = "async-traits")]
|
||||
use futures_core::ready;
|
||||
use std::fmt;
|
||||
use std::future::Future;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -28,6 +28,7 @@ tokio-reactor = { version = "0.2.0", path = "../tokio-reactor" }
|
||||
# bytes = "0.4"
|
||||
mio = "0.6.14"
|
||||
log = "0.4"
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
[dev-dependencies]
|
||||
env_logger = { version = "0.5", default-features = false }
|
||||
|
||||
@@ -12,15 +12,6 @@
|
||||
//! Reading and writing to it can be done using futures, which return the
|
||||
//! [`Recv`], [`Send`], [`RecvFrom`] and [`SendTo`] structs respectively.
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// mod frame;
|
||||
mod recv;
|
||||
mod recv_from;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use super::split::{split, UdpSocketRecvHalf, UdpSocketSendHalf};
|
||||
use super::{Recv, RecvFrom, Send, SendTo};
|
||||
use futures_core::ready;
|
||||
use mio;
|
||||
use std::convert::TryFrom;
|
||||
use std::fmt;
|
||||
|
||||
@@ -22,11 +22,11 @@ categories = ["asynchronous"]
|
||||
publish = false
|
||||
|
||||
[features]
|
||||
async-traits = ["futures-core-preview"]
|
||||
async-traits = []
|
||||
|
||||
[dependencies]
|
||||
bytes = "0.4.8"
|
||||
futures-core-preview = { version = "0.3.0-alpha.17", optional = true }
|
||||
futures-core-preview = { version = "0.3.0-alpha.17" }
|
||||
iovec = "0.1.2"
|
||||
libc = "0.2.42"
|
||||
log = "0.4.2"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
use crate::{Recv, RecvFrom, Send, SendTo};
|
||||
use futures_core::ready;
|
||||
use mio::Ready;
|
||||
use mio_uds;
|
||||
use std::fmt;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#![cfg(feature = "async-traits")]
|
||||
|
||||
use crate::{UnixListener, UnixStream};
|
||||
use futures_core::ready;
|
||||
use futures_core::stream::Stream;
|
||||
use std::io;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -8,15 +8,6 @@
|
||||
//!
|
||||
//! This crate provides APIs for using Unix Domain Sockets with Tokio.
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
mod datagram;
|
||||
// mod frame;
|
||||
mod incoming;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
use crate::UnixStream;
|
||||
use futures_core::ready;
|
||||
use mio::Ready;
|
||||
use mio_uds;
|
||||
use std::convert::TryFrom;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use crate::ucred::{self, UCred};
|
||||
use bytes::{Buf, BufMut};
|
||||
use futures_core::ready;
|
||||
use iovec::IoVec;
|
||||
use mio::Ready;
|
||||
use mio_uds;
|
||||
|
||||
@@ -62,6 +62,7 @@ uds = ["tokio-uds"]
|
||||
[dependencies]
|
||||
# Only non-optional dependency...
|
||||
#futures = "0.1.20"
|
||||
futures-core-preview = "0.3.0-alpha.17"
|
||||
|
||||
# Everything else is optional...
|
||||
bytes = { version = "0.4", optional = true }
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
use futures_core::ready;
|
||||
use std::future::Future;
|
||||
use std::io;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
use futures_core::ready;
|
||||
use std::future::Future;
|
||||
use std::io;
|
||||
use std::marker::Unpin;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use tokio_io::AsyncRead;
|
||||
|
||||
use futures_core::ready;
|
||||
use std::future::Future;
|
||||
use std::io;
|
||||
use std::pin::Pin;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use tokio_io::AsyncWrite;
|
||||
|
||||
use futures_core::ready;
|
||||
use std::future::Future;
|
||||
use std::io;
|
||||
use std::mem;
|
||||
|
||||
@@ -75,15 +75,6 @@ macro_rules! if_runtime {
|
||||
)*)
|
||||
}
|
||||
|
||||
macro_rules! ready {
|
||||
($e:expr) => {
|
||||
match $e {
|
||||
::std::task::Poll::Ready(t) => t,
|
||||
::std::task::Poll::Pending => return ::std::task::Poll::Pending,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#[cfg(feature = "timer")]
|
||||
pub mod clock;
|
||||
#[cfg(feature = "codec")]
|
||||
|
||||
Reference in New Issue
Block a user