Get rid of some pointless pin_project stuff (#14212)

This commit is contained in:
zdave
2023-05-25 11:53:04 +01:00
committed by GitHub
parent 05da6d8e84
commit 7e8bfb7f55
3 changed files with 5 additions and 9 deletions
-1
View File
@@ -9621,7 +9621,6 @@ dependencies = [
"libp2p",
"log",
"parity-scale-codec",
"pin-project",
"sc-network",
"sc-network-common",
"sc-peerset",
@@ -18,7 +18,6 @@ codec = { package = "parity-scale-codec", version = "3.2.2", features = ["derive
futures = "0.3.21"
libp2p = "0.51.3"
log = "0.4.17"
pin-project = "1.0.12"
prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.10.0-dev", path = "../../../utils/prometheus" }
sc-network = { version = "0.10.0-dev", path = "../" }
sc-network-common = { version = "0.10.0-dev", path = "../common" }
@@ -97,21 +97,19 @@ impl Metrics {
}
}
#[pin_project::pin_project]
struct PendingTransaction<H> {
#[pin]
validation: TransactionImportFuture,
tx_hash: H,
}
impl<H> Unpin for PendingTransaction<H> {}
impl<H: ExHashT> Future for PendingTransaction<H> {
type Output = (H, TransactionImport);
fn poll(self: Pin<&mut Self>, cx: &mut std::task::Context<'_>) -> Poll<Self::Output> {
let mut this = self.project();
if let Poll::Ready(import_result) = Pin::new(&mut this.validation).poll_unpin(cx) {
return Poll::Ready((this.tx_hash.clone(), import_result))
fn poll(mut self: Pin<&mut Self>, cx: &mut std::task::Context<'_>) -> Poll<Self::Output> {
if let Poll::Ready(import_result) = self.validation.poll_unpin(cx) {
return Poll::Ready((self.tx_hash.clone(), import_result))
}
Poll::Pending