Replace futures::future::poll_fn -> core::future::poll_fn.

This commit is contained in:
Dario Nieuwenhuis 2022-09-22 16:42:49 +02:00 committed by Mathias
parent 7412a859fd
commit 2fed9f949a
29 changed files with 34 additions and 43 deletions

View file

@ -1,10 +1,9 @@
use core::future::poll_fn;
use core::marker::PhantomData; use core::marker::PhantomData;
use core::mem; use core::mem;
use core::ptr::NonNull; use core::ptr::NonNull;
use core::task::Poll; use core::task::Poll;
use futures_util::future::poll_fn;
use super::raw; use super::raw;
/// Token to spawn a newly-created task in an executor. /// Token to spawn a newly-created task in an executor.

View file

@ -1,5 +1,5 @@
//! A radio driver integration for the radio found on STM32WL family devices. //! A radio driver integration for the radio found on STM32WL family devices.
use core::future::Future; use core::future::{poll_fn, Future};
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::{into_ref, Peripheral, PeripheralRef}; use embassy_hal_common::{into_ref, Peripheral, PeripheralRef};
@ -11,7 +11,6 @@ use embassy_stm32::subghz::{
Status, SubGhz, TcxoMode, TcxoTrim, Timeout, TxParams, Status, SubGhz, TcxoMode, TcxoTrim, Timeout, TxParams,
}; };
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use lorawan_device::async_device::radio::{Bandwidth, PhyRxTx, RfConfig, RxQuality, SpreadingFactor, TxConfig}; use lorawan_device::async_device::radio::{Bandwidth, PhyRxTx, RfConfig, RxQuality, SpreadingFactor, TxConfig};
use lorawan_device::async_device::Timings; use lorawan_device::async_device::Timings;

View file

@ -1,10 +1,9 @@
use core::cell::UnsafeCell; use core::cell::UnsafeCell;
use core::future::Future; use core::future::{poll_fn, Future};
use core::task::{Context, Poll}; use core::task::{Context, Poll};
use embassy_sync::waitqueue::WakerRegistration; use embassy_sync::waitqueue::WakerRegistration;
use embassy_time::{Instant, Timer}; use embassy_time::{Instant, Timer};
use futures::future::poll_fn;
use futures::pin_mut; use futures::pin_mut;
use heapless::Vec; use heapless::Vec;
#[cfg(feature = "dhcpv4")] #[cfg(feature = "dhcpv4")]

View file

@ -1,8 +1,8 @@
use core::cell::UnsafeCell; use core::cell::UnsafeCell;
use core::future::poll_fn;
use core::mem; use core::mem;
use core::task::Poll; use core::task::Poll;
use futures::future::poll_fn;
use smoltcp::iface::{Interface, SocketHandle}; use smoltcp::iface::{Interface, SocketHandle};
use smoltcp::socket::tcp; use smoltcp::socket::tcp;
use smoltcp::time::Duration; use smoltcp::time::Duration;
@ -103,7 +103,7 @@ impl<'a> TcpSocket<'a> {
Err(tcp::ConnectError::Unaddressable) => return Err(ConnectError::NoRoute), Err(tcp::ConnectError::Unaddressable) => return Err(ConnectError::NoRoute),
} }
futures::future::poll_fn(|cx| unsafe { poll_fn(|cx| unsafe {
self.io.with_mut(|s, _| match s.state() { self.io.with_mut(|s, _| match s.state() {
tcp::State::Closed | tcp::State::TimeWait => Poll::Ready(Err(ConnectError::ConnectionReset)), tcp::State::Closed | tcp::State::TimeWait => Poll::Ready(Err(ConnectError::ConnectionReset)),
tcp::State::Listen => unreachable!(), tcp::State::Listen => unreachable!(),
@ -128,7 +128,7 @@ impl<'a> TcpSocket<'a> {
Err(tcp::ListenError::Unaddressable) => return Err(AcceptError::InvalidPort), Err(tcp::ListenError::Unaddressable) => return Err(AcceptError::InvalidPort),
} }
futures::future::poll_fn(|cx| unsafe { poll_fn(|cx| unsafe {
self.io.with_mut(|s, _| match s.state() { self.io.with_mut(|s, _| match s.state() {
tcp::State::Listen | tcp::State::SynSent | tcp::State::SynReceived => { tcp::State::Listen | tcp::State::SynSent | tcp::State::SynReceived => {
s.register_send_waker(cx.waker()); s.register_send_waker(cx.waker());

View file

@ -1,8 +1,8 @@
use core::cell::UnsafeCell; use core::cell::UnsafeCell;
use core::future::poll_fn;
use core::mem; use core::mem;
use core::task::Poll; use core::task::Poll;
use futures::future::poll_fn;
use smoltcp::iface::{Interface, SocketHandle}; use smoltcp::iface::{Interface, SocketHandle};
use smoltcp::socket::udp::{self, PacketMetadata}; use smoltcp::socket::udp::{self, PacketMetadata};
use smoltcp::wire::{IpEndpoint, IpListenEndpoint}; use smoltcp::wire::{IpEndpoint, IpListenEndpoint};

View file

@ -15,7 +15,7 @@
use core::cell::RefCell; use core::cell::RefCell;
use core::cmp::min; use core::cmp::min;
use core::future::Future; use core::future::{poll_fn, Future};
use core::sync::atomic::{compiler_fence, Ordering}; use core::sync::atomic::{compiler_fence, Ordering};
use core::task::Poll; use core::task::Poll;
@ -23,7 +23,6 @@ use embassy_cortex_m::peripheral::{PeripheralMutex, PeripheralState, StateStorag
use embassy_hal_common::ring_buffer::RingBuffer; use embassy_hal_common::ring_buffer::RingBuffer;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::WakerRegistration; use embassy_sync::waitqueue::WakerRegistration;
use futures::future::poll_fn;
// Re-export SVD variants to allow user to directly set values // Re-export SVD variants to allow user to directly set values
pub use pac::uarte0::{baudrate::BAUDRATE_A as Baudrate, config::PARITY_A as Parity}; pub use pac::uarte0::{baudrate::BAUDRATE_A as Baudrate, config::PARITY_A as Parity};

View file

@ -1,10 +1,9 @@
use core::convert::Infallible; use core::convert::Infallible;
use core::future::Future; use core::future::{poll_fn, Future};
use core::task::{Context, Poll}; use core::task::{Context, Poll};
use embassy_hal_common::{impl_peripheral, Peripheral, PeripheralRef}; use embassy_hal_common::{impl_peripheral, Peripheral, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use crate::gpio::sealed::Pin as _; use crate::gpio::sealed::Pin as _;
use crate::gpio::{AnyPin, Flex, Input, Output, Pin as GpioPin}; use crate::gpio::{AnyPin, Flex, Input, Output, Pin as GpioPin};

View file

@ -1,10 +1,10 @@
//! Quadrature decoder interface //! Quadrature decoder interface
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use crate::gpio::sealed::Pin as _; use crate::gpio::sealed::Pin as _;
use crate::gpio::{AnyPin, Pin as GpioPin}; use crate::gpio::{AnyPin, Pin as GpioPin};

View file

@ -1,11 +1,11 @@
#![macro_use] #![macro_use]
use core::future::poll_fn;
use core::ptr; use core::ptr;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::drop::DropBomb; use embassy_hal_common::drop::DropBomb;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use futures::future::poll_fn;
use crate::gpio::{self, Pin as GpioPin}; use crate::gpio::{self, Pin as GpioPin};
use crate::interrupt::{Interrupt, InterruptExt}; use crate::interrupt::{Interrupt, InterruptExt};

View file

@ -1,3 +1,4 @@
use core::future::poll_fn;
use core::ptr; use core::ptr;
use core::sync::atomic::{AtomicPtr, Ordering}; use core::sync::atomic::{AtomicPtr, Ordering};
use core::task::Poll; use core::task::Poll;
@ -5,7 +6,6 @@ use core::task::Poll;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use crate::interrupt::InterruptExt; use crate::interrupt::InterruptExt;
use crate::peripherals::RNG; use crate::peripherals::RNG;

View file

@ -1,12 +1,12 @@
#![macro_use] #![macro_use]
use core::future::poll_fn;
use core::sync::atomic::{compiler_fence, Ordering}; use core::sync::atomic::{compiler_fence, Ordering};
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{impl_peripheral, into_ref, PeripheralRef}; use embassy_hal_common::{impl_peripheral, into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use pac::{saadc, SAADC}; use pac::{saadc, SAADC};
use saadc::ch::config::{GAIN_A, REFSEL_A, RESP_A, TACQ_A}; use saadc::ch::config::{GAIN_A, REFSEL_A, RESP_A, TACQ_A};
// We treat the positive and negative channels with the same enum values to keep our type tidy and given they are the same // We treat the positive and negative channels with the same enum values to keep our type tidy and given they are the same

View file

@ -1,12 +1,12 @@
#![macro_use] #![macro_use]
use core::future::poll_fn;
use core::sync::atomic::{compiler_fence, Ordering}; use core::sync::atomic::{compiler_fence, Ordering};
use core::task::Poll; use core::task::Poll;
use embassy_embedded_hal::SetConfig; use embassy_embedded_hal::SetConfig;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
pub use embedded_hal_02::spi::{Mode, Phase, Polarity, MODE_0, MODE_1, MODE_2, MODE_3}; pub use embedded_hal_02::spi::{Mode, Phase, Polarity, MODE_0, MODE_1, MODE_2, MODE_3};
use futures::future::poll_fn;
pub use pac::spim0::frequency::FREQUENCY_A as Frequency; pub use pac::spim0::frequency::FREQUENCY_A as Frequency;
use crate::chip::FORCE_COPY_BUFFER_SIZE; use crate::chip::FORCE_COPY_BUFFER_SIZE;

View file

@ -1,12 +1,12 @@
//! Temperature sensor interface. //! Temperature sensor interface.
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use fixed::types::I30F2; use fixed::types::I30F2;
use futures::future::poll_fn;
use crate::interrupt::InterruptExt; use crate::interrupt::InterruptExt;
use crate::peripherals::TEMP; use crate::peripherals::TEMP;

View file

@ -1,12 +1,12 @@
#![macro_use] #![macro_use]
use core::future::poll_fn;
use core::marker::PhantomData; use core::marker::PhantomData;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use crate::interrupt::{Interrupt, InterruptExt}; use crate::interrupt::{Interrupt, InterruptExt};
use crate::ppi::{Event, Task}; use crate::ppi::{Event, Task};

View file

@ -6,7 +6,7 @@
//! //!
//! - nRF52832: Section 33 //! - nRF52832: Section 33
//! - nRF52840: Section 6.31 //! - nRF52840: Section 6.31
use core::future::Future; use core::future::{poll_fn, Future};
use core::sync::atomic::compiler_fence; use core::sync::atomic::compiler_fence;
use core::sync::atomic::Ordering::SeqCst; use core::sync::atomic::Ordering::SeqCst;
use core::task::Poll; use core::task::Poll;
@ -16,7 +16,6 @@ use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
#[cfg(feature = "time")] #[cfg(feature = "time")]
use embassy_time::{Duration, Instant}; use embassy_time::{Duration, Instant};
use futures::future::poll_fn;
use crate::chip::{EASY_DMA_SIZE, FORCE_COPY_BUFFER_SIZE}; use crate::chip::{EASY_DMA_SIZE, FORCE_COPY_BUFFER_SIZE};
use crate::gpio::Pin as GpioPin; use crate::gpio::Pin as GpioPin;

View file

@ -13,12 +13,12 @@
//! memory may be used given that buffers are passed in directly to its read and write //! memory may be used given that buffers are passed in directly to its read and write
//! methods. //! methods.
use core::future::poll_fn;
use core::sync::atomic::{compiler_fence, Ordering}; use core::sync::atomic::{compiler_fence, Ordering};
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use futures::future::poll_fn;
use pac::uarte0::RegisterBlock; use pac::uarte0::RegisterBlock;
// Re-export SVD variants to allow user to directly set values. // Re-export SVD variants to allow user to directly set values.
pub use pac::uarte0::{baudrate::BAUDRATE_A as Baudrate, config::PARITY_A as Parity}; pub use pac::uarte0::{baudrate::BAUDRATE_A as Baudrate, config::PARITY_A as Parity};

View file

@ -1,5 +1,6 @@
#![macro_use] #![macro_use]
use core::future::{poll_fn, Future};
use core::marker::PhantomData; use core::marker::PhantomData;
use core::mem::MaybeUninit; use core::mem::MaybeUninit;
use core::sync::atomic::{compiler_fence, AtomicBool, AtomicU32, Ordering}; use core::sync::atomic::{compiler_fence, AtomicBool, AtomicU32, Ordering};
@ -11,8 +12,6 @@ use embassy_sync::waitqueue::AtomicWaker;
pub use embassy_usb; pub use embassy_usb;
use embassy_usb::driver::{self, EndpointError, Event, Unsupported}; use embassy_usb::driver::{self, EndpointError, Event, Unsupported};
use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection}; use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection};
use futures::future::poll_fn;
use futures::Future;
use pac::usbd::RegisterBlock; use pac::usbd::RegisterBlock;
use crate::interrupt::{Interrupt, InterruptExt}; use crate::interrupt::{Interrupt, InterruptExt};

View file

@ -1,3 +1,4 @@
use core::future::Future;
use core::pin::Pin; use core::pin::Pin;
use core::sync::atomic::{compiler_fence, Ordering}; use core::sync::atomic::{compiler_fence, Ordering};
use core::task::{Context, Poll}; use core::task::{Context, Poll};
@ -5,7 +6,6 @@ use core::task::{Context, Poll};
use embassy_cortex_m::interrupt::{Interrupt, InterruptExt}; use embassy_cortex_m::interrupt::{Interrupt, InterruptExt};
use embassy_hal_common::{impl_peripheral, into_ref, Peripheral, PeripheralRef}; use embassy_hal_common::{impl_peripheral, into_ref, Peripheral, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::Future;
use pac::dma::vals::DataSize; use pac::dma::vals::DataSize;
use crate::pac::dma::vals; use crate::pac::dma::vals;

View file

@ -1,3 +1,4 @@
use core::future::{poll_fn, Future};
use core::marker::PhantomData; use core::marker::PhantomData;
use core::slice; use core::slice;
use core::sync::atomic::Ordering; use core::sync::atomic::Ordering;
@ -8,8 +9,6 @@ use embassy_hal_common::into_ref;
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use embassy_usb::driver::{self, EndpointAllocError, EndpointError, Event, Unsupported}; use embassy_usb::driver::{self, EndpointAllocError, EndpointError, Event, Unsupported};
use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection}; use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection};
use futures::future::poll_fn;
use futures::Future;
use crate::interrupt::{Interrupt, InterruptExt}; use crate::interrupt::{Interrupt, InterruptExt};
use crate::{pac, peripherals, Peripheral, RegExt}; use crate::{pac, peripherals, Peripheral, RegExt};

View file

@ -1,8 +1,8 @@
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use crate::gpio::sealed::AFType; use crate::gpio::sealed::AFType;
use crate::gpio::Speed; use crate::gpio::Speed;

View file

@ -1,4 +1,5 @@
use core::cmp; use core::cmp;
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use atomic_polyfill::{AtomicUsize, Ordering}; use atomic_polyfill::{AtomicUsize, Ordering};
@ -6,7 +7,6 @@ use embassy_embedded_hal::SetConfig;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use crate::dma::NoDma; use crate::dma::NoDma;
use crate::gpio::sealed::AFType; use crate::gpio::sealed::AFType;

View file

@ -1,10 +1,10 @@
#![macro_use] #![macro_use]
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use rand_core::{CryptoRng, RngCore}; use rand_core::{CryptoRng, RngCore};
use crate::{pac, peripherals, Peripheral}; use crate::{pac, peripherals, Peripheral};

View file

@ -1,12 +1,12 @@
#![macro_use] #![macro_use]
use core::default::Default; use core::default::Default;
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use embassy_hal_common::drop::OnDrop; use embassy_hal_common::drop::OnDrop;
use embassy_hal_common::{into_ref, PeripheralRef}; use embassy_hal_common::{into_ref, PeripheralRef};
use embassy_sync::waitqueue::AtomicWaker; use embassy_sync::waitqueue::AtomicWaker;
use futures::future::poll_fn;
use sdio_host::{BusWidth, CardCapacity, CardStatus, CurrentState, SDStatus, CID, CSD, OCR, SCR}; use sdio_host::{BusWidth, CardCapacity, CardStatus, CurrentState, SDStatus, CID, CSD, OCR, SCR};
use crate::dma::NoDma; use crate::dma::NoDma;

View file

@ -1,11 +1,10 @@
use core::future::Future; use core::future::{poll_fn, Future};
use core::task::Poll; use core::task::Poll;
use atomic_polyfill::{compiler_fence, Ordering}; use atomic_polyfill::{compiler_fence, Ordering};
use embassy_cortex_m::peripheral::{PeripheralMutex, PeripheralState, StateStorage}; use embassy_cortex_m::peripheral::{PeripheralMutex, PeripheralState, StateStorage};
use embassy_hal_common::ring_buffer::RingBuffer; use embassy_hal_common::ring_buffer::RingBuffer;
use embassy_sync::waitqueue::WakerRegistration; use embassy_sync::waitqueue::WakerRegistration;
use futures::future::poll_fn;
use super::*; use super::*;

View file

@ -1,5 +1,6 @@
#![macro_use] #![macro_use]
use core::future::{poll_fn, Future};
use core::marker::PhantomData; use core::marker::PhantomData;
use core::sync::atomic::Ordering; use core::sync::atomic::Ordering;
use core::task::Poll; use core::task::Poll;
@ -10,8 +11,6 @@ use embassy_sync::waitqueue::AtomicWaker;
use embassy_time::{block_for, Duration}; use embassy_time::{block_for, Duration};
use embassy_usb::driver::{self, EndpointAllocError, EndpointError, Event, Unsupported}; use embassy_usb::driver::{self, EndpointAllocError, EndpointError, Event, Unsupported};
use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection}; use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection};
use futures::future::poll_fn;
use futures::Future;
use pac::common::{Reg, RW}; use pac::common::{Reg, RW};
use pac::usb::vals::{EpType, Stat}; use pac::usb::vals::{EpType, Stat};

View file

@ -2,11 +2,10 @@
//! //!
//! This module provides a mutex that can be used to synchronize data between asynchronous tasks. //! This module provides a mutex that can be used to synchronize data between asynchronous tasks.
use core::cell::{RefCell, UnsafeCell}; use core::cell::{RefCell, UnsafeCell};
use core::future::poll_fn;
use core::ops::{Deref, DerefMut}; use core::ops::{Deref, DerefMut};
use core::task::Poll; use core::task::Poll;
use futures_util::future::poll_fn;
use crate::blocking_mutex::raw::RawMutex; use crate::blocking_mutex::raw::RawMutex;
use crate::blocking_mutex::Mutex as BlockingMutex; use crate::blocking_mutex::Mutex as BlockingMutex;
use crate::waitqueue::WakerRegistration; use crate::waitqueue::WakerRegistration;

View file

@ -1,6 +1,6 @@
//! A synchronization primitive for passing the latest value to a task. //! A synchronization primitive for passing the latest value to a task.
use core::cell::UnsafeCell; use core::cell::UnsafeCell;
use core::future::Future; use core::future::{poll_fn, Future};
use core::mem; use core::mem;
use core::task::{Context, Poll, Waker}; use core::task::{Context, Poll, Waker};
@ -94,7 +94,7 @@ impl<T: Send> Signal<T> {
/// Future that completes when this Signal has been signaled. /// Future that completes when this Signal has been signaled.
pub fn wait(&self) -> impl Future<Output = T> + '_ { pub fn wait(&self) -> impl Future<Output = T> + '_ {
futures_util::future::poll_fn(move |cx| self.poll_wait(cx)) poll_fn(move |cx| self.poll_wait(cx))
} }
/// non-blocking method to check whether this signal has been signaled. /// non-blocking method to check whether this signal has been signaled.

View file

@ -2,6 +2,7 @@
#![no_main] #![no_main]
#![feature(type_alias_impl_trait)] #![feature(type_alias_impl_trait)]
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use embassy_executor::Spawner; use embassy_executor::Spawner;
@ -46,7 +47,7 @@ async fn run2() {
#[embassy_executor::task] #[embassy_executor::task]
async fn run3() { async fn run3() {
futures::future::poll_fn(|cx| { poll_fn(|cx| {
cx.waker().wake_by_ref(); cx.waker().wake_by_ref();
Poll::<()>::Pending Poll::<()>::Pending
}) })

View file

@ -2,6 +2,7 @@
#![no_main] #![no_main]
#![feature(type_alias_impl_trait)] #![feature(type_alias_impl_trait)]
use core::future::poll_fn;
use core::task::Poll; use core::task::Poll;
use defmt::{info, unwrap}; use defmt::{info, unwrap};
@ -26,7 +27,7 @@ async fn run2() {
#[embassy_executor::task] #[embassy_executor::task]
async fn run3() { async fn run3() {
futures::future::poll_fn(|cx| { poll_fn(|cx| {
cx.waker().wake_by_ref(); cx.waker().wake_by_ref();
Poll::<()>::Pending Poll::<()>::Pending
}) })