pub struct WakeAlarmsSynchronousProxy { /* private fields */ }
Implementations§
Source§impl WakeAlarmsSynchronousProxy
impl WakeAlarmsSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<WakeAlarmsEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<WakeAlarmsEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn set_and_wait(
&self,
deadline: BootInstant,
mode: SetMode,
alarm_id: &str,
___deadline: MonotonicInstant,
) -> Result<WakeAlarmsSetAndWaitResult, Error>
pub fn set_and_wait( &self, deadline: BootInstant, mode: SetMode, alarm_id: &str, ___deadline: MonotonicInstant, ) -> Result<WakeAlarmsSetAndWaitResult, Error>
Sets a wake alarm with the provided parameters, and waits for the alarm to fire.
The caller may request multiple alarms concurrently. Re-requesting
an alarm that has the same alarm_id
as an already scheduled alarm
causes that scheduled alarm to be canceled before the same alarm
is scheduled again.
The call to SetAndWait
returns when the alarm fires, or an error
occurs, or the alarm is canceled.
§Return value
keep_alive
: a handle which prevents system suspend so long as it is held alive.
§Protocol Errors
- [DROPPED] if the alarm has been canceled by using [Cancel].
- [UNSPECIFIED] you are observing a new failure mode which has not been assigned an error code yet. Expect this failure mode to be assigned a more specific error code in future versions of this API. This is not a bug, but an indication that you may need to update the API version.
- [INTERNAL] is a bug: an internal fallible call (which is expected to be unlikely to fail) has failed somehow. Please report this for investigation.
Sourcepub fn cancel(&self, alarm_id: &str) -> Result<(), Error>
pub fn cancel(&self, alarm_id: &str) -> Result<(), Error>
Cancels the alarm specified by alarm_id
.
Providing an alarm_id
of an alarm that is not scheduled quietly
succeeds.
Sourcepub fn set(
&self,
notifier: ClientEnd<NotifierMarker>,
deadline: BootInstant,
mode: SetMode,
alarm_id: &str,
___deadline: MonotonicInstant,
) -> Result<WakeAlarmsSetResult, Error>
pub fn set( &self, notifier: ClientEnd<NotifierMarker>, deadline: BootInstant, mode: SetMode, alarm_id: &str, ___deadline: MonotonicInstant, ) -> Result<WakeAlarmsSetResult, Error>
Sets a wake alarm with the provided parameters.
The caller may request multiple alarms concurrently. Re-requesting
an alarm that has the same alarm_id
as an already scheduled alarm
causes that scheduled alarm to be canceled before the same alarm
is scheduled again.
§Return value
This method will return when the alarm is scheduled.
§Protocol Errors
- [UNSPECIFIED] you are observing a new failure mode which has not been assigned an error code yet. Expect this failure mode to be assigned a more specific error code in future versions of this API. This is not a bug, but an indication that you may need to update the API version.
- [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 Debug for WakeAlarmsSynchronousProxy
impl Debug for WakeAlarmsSynchronousProxy
Source§impl From<Channel> for WakeAlarmsSynchronousProxy
impl From<Channel> for WakeAlarmsSynchronousProxy
Source§impl From<WakeAlarmsSynchronousProxy> for Handle
impl From<WakeAlarmsSynchronousProxy> for Handle
Source§fn from(value: WakeAlarmsSynchronousProxy) -> Self
fn from(value: WakeAlarmsSynchronousProxy) -> Self
Source§impl FromClient for WakeAlarmsSynchronousProxy
impl FromClient for WakeAlarmsSynchronousProxy
Source§type Protocol = WakeAlarmsMarker
type Protocol = WakeAlarmsMarker
Source§fn from_client(value: ClientEnd<WakeAlarmsMarker>) -> Self
fn from_client(value: ClientEnd<WakeAlarmsMarker>) -> Self
Source§impl SynchronousProxy for WakeAlarmsSynchronousProxy
impl SynchronousProxy for WakeAlarmsSynchronousProxy
Source§type Proxy = WakeAlarmsProxy
type Proxy = WakeAlarmsProxy
Source§type Protocol = WakeAlarmsMarker
type Protocol = WakeAlarmsMarker
Proxy
controls.