pub struct WakeProxy { /* private fields */ }
Implementations§
Source§impl WakeProxy
impl WakeProxy
Sourcepub fn take_event_stream(&self) -> WakeEventStream
pub fn take_event_stream(&self) -> WakeEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn set_and_wait(
&self,
deadline: BootInstant,
setup_done: Event,
alarm_id: &str,
) -> QueryResponseFut<ClientSideBatonManagementSetAndWaitResult, DefaultFuchsiaResourceDialect>
pub fn set_and_wait( &self, deadline: BootInstant, setup_done: Event, alarm_id: &str, ) -> QueryResponseFut<ClientSideBatonManagementSetAndWaitResult, DefaultFuchsiaResourceDialect>
Sets a wake alarm with the provided parameters, and waits for the alarm to fire.
The caller MAY request multiple alarms open concurrently. However, the callee is not required to support any specific number of open alarms.
The call to SetAndWait will hang until the alarm fires, or an error occurs.
In the event that the caller requests more open alarms than the callee is willing to provide, the callee SHOULD reject the new request, but honor previous requests.
§Return value
keep_alive
: a handle which prevents system suspend so long as it is held alive.
This method will return when the alarm set in the call fires.
§Protocol Errors
- [DROPPED] if the alarm has been canceled by using [Cancel].
- [UNSPECIFIED] a new error mode has occurred, please report this for investigatin.
- [INTERNAL] is a bug: an internal fallible call (which is expected to be unlikely to fail) has failed somehow. Please report this for investigation.
Trait Implementations§
Source§impl Proxy for WakeProxy
impl Proxy for WakeProxy
Source§type Protocol = WakeMarker
type Protocol = WakeMarker
The protocol which this
Proxy
controls.Source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Create a proxy over the given channel.
Source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Attempt to convert the proxy back into a channel. Read more
Source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
Get a reference to the proxy’s underlying channel. Read more
§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Attempt to convert the proxy back into a client end. Read more
Source§impl WakeProxyInterface for WakeProxy
impl WakeProxyInterface for WakeProxy
Auto Trait Implementations§
impl Freeze for WakeProxy
impl !RefUnwindSafe for WakeProxy
impl Send for WakeProxy
impl Sync for WakeProxy
impl Unpin for WakeProxy
impl !UnwindSafe for WakeProxy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> ProxyHasClient for Twhere
T: Proxy,
impl<T> ProxyHasClient for Twhere
T: Proxy,
§fn client(&self) -> Result<ZirconClient, Infallible>
fn client(&self) -> Result<ZirconClient, Infallible>
Get a “client” for this proxy. This is just an object which has methods
for a few common handle creation operations.