pub trait AsyncSendTryGetFut<'a>: 'a + Send {
type Input: 'a + Sync + Send;
type Output: 'a + Send;
type Aux: 'a + Send;
type Error: 'a + Send;
// Required method
fn async_send_try_get_fut<'b>(
self,
input: &'b mut Self::Input,
) -> Pin<Box<dyn Send + Future<Output = Result<(Pin<Box<dyn Send + Future<Output = Self::Output> + 'b>>, Self::Aux), Self::Error>> + 'b>>;
}Expand description
A functor trait for trying to get a complex future from an input.
Required Associated Types§
Required Methods§
Sourcefn async_send_try_get_fut<'b>(
self,
input: &'b mut Self::Input,
) -> Pin<Box<dyn Send + Future<Output = Result<(Pin<Box<dyn Send + Future<Output = Self::Output> + 'b>>, Self::Aux), Self::Error>> + 'b>>
fn async_send_try_get_fut<'b>( self, input: &'b mut Self::Input, ) -> Pin<Box<dyn Send + Future<Output = Result<(Pin<Box<dyn Send + Future<Output = Self::Output> + 'b>>, Self::Aux), Self::Error>> + 'b>>
The functor applicator.
Takes a mutable reference some input and returns either a future and some auxiliary data or an error.
For now this has to use Pin<Box<dyn Future>> due a compiler bug
(rust-lang/rust#100013). This will
change in a future release when this bug is fixed.