fix clippy warn

new-scheduler
k-nasa 5 years ago
parent 3c6d41ccb4
commit 6cbf48f12d

@ -45,16 +45,14 @@ where
let mut left = this.left; let mut left = this.left;
let mut right = this.right; let mut right = this.right;
if Future::poll(Pin::new(&mut left), cx).is_ready() { let is_left_ready = Future::poll(Pin::new(&mut left), cx).is_ready();
if right.as_ref().output().is_some() { if is_left_ready && right.as_ref().output().is_some() {
return Poll::Ready((left.take().unwrap(), right.take().unwrap())); return Poll::Ready((left.take().unwrap(), right.take().unwrap()));
}
} }
if Future::poll(Pin::new(&mut right), cx).is_ready() { let is_right_ready = Future::poll(Pin::new(&mut right), cx).is_ready();
if left.as_ref().output().is_some() { if is_right_ready && left.as_ref().output().is_some() {
return Poll::Ready((left.take().unwrap(), right.take().unwrap())); return Poll::Ready((left.take().unwrap(), right.take().unwrap()));
}
} }
Poll::Pending Poll::Pending

@ -1,5 +1,5 @@
use std::pin::Pin;
use std::future::Future; use std::future::Future;
use std::pin::Pin;
use pin_project_lite::pin_project; use pin_project_lite::pin_project;

@ -1,14 +1,13 @@
use pin_project_lite::pin_project;
use std::default::Default;
use std::future::Future; use std::future::Future;
use std::pin::Pin; use std::pin::Pin;
use std::default::Default;
use pin_project_lite::pin_project;
use crate::stream::Stream; use crate::stream::Stream;
use crate::task::{Context, Poll}; use crate::task::{Context, Poll};
pin_project! { pin_project! {
#[derive(Debug)] #[derive(Debug)]
#[allow(missing_debug_implementations)]
#[cfg(all(feature = "default", feature = "unstable"))] #[cfg(all(feature = "default", feature = "unstable"))]
#[cfg_attr(feature = "docs", doc(cfg(unstable)))] #[cfg_attr(feature = "docs", doc(cfg(unstable)))]
pub struct PartitionFuture<S, F, B> { pub struct PartitionFuture<S, F, B> {
@ -46,10 +45,12 @@ where
match next { match next {
Some(v) => { Some(v) => {
let mut res = this.res.take().unwrap(); let mut res = this.res.take().unwrap();
match (this.f)(&v) {
true => res.0.extend(Some(v)), if (this.f)(&v) {
false => res.1.extend(Some(v)), res.0.extend(Some(v))
}; } else {
res.1.extend(Some(v))
}
*this.res = Some(res); *this.res = Some(res);
} }

@ -43,7 +43,7 @@ static POOL: Lazy<Pool> = Lazy::new(|| {
.name("async-std/executor".to_string()) .name("async-std/executor".to_string())
.spawn(|| { .spawn(|| {
let _ = PROCESSOR.with(|p| p.set(proc)); let _ = PROCESSOR.with(|p| p.set(proc));
abort_on_panic(|| main_loop()); abort_on_panic(main_loop);
}) })
.expect("cannot start a thread driving tasks"); .expect("cannot start a thread driving tasks");
} }

Loading…
Cancel
Save