pub trait ReadyGate: Send {
// Required method
fn wait<'life0, 'life1, 'life2, 'async_trait>(
&'life0 mut self,
handle: &'life1 Arc<dyn VmHandle>,
agent: &'life2 Arc<dyn GuestAgent>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
}Expand description
An armed readiness observer, awaited once.
Required Methods§
Sourcefn wait<'life0, 'life1, 'life2, 'async_trait>(
&'life0 mut self,
handle: &'life1 Arc<dyn VmHandle>,
agent: &'life2 Arc<dyn GuestAgent>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn wait<'life0, 'life1, 'life2, 'async_trait>(
&'life0 mut self,
handle: &'life1 Arc<dyn VmHandle>,
agent: &'life2 Arc<dyn GuestAgent>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Wait for the guest agent to be serving.
Both arguments describe the VM that booted after this gate was
armed, which is why they arrive here rather than at arming time: a
Readiness::DialOut gate uses neither (its observer has been
listening since before the guest started), Readiness::Poll
dials the guest over handle’s transport, and Readiness::Probe
round-trips agent. The caller owns the deadline.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".