pub struct Interrupt<K = RealInterruptKind, T = BootTimeline>(/* private fields */);Expand description
An object representing a Zircon interrupt.
As essentially a subtype of NullableHandle, it can be freely interconverted.
Implementations§
Source§impl<K: InterruptKind, T: Timeline> Interrupt<K, T>
impl<K: InterruptKind, T: Timeline> Interrupt<K, T>
Sourcepub fn bind_port(&self, port: &Port, key: u64) -> Result<(), Status>
pub fn bind_port(&self, port: &Port, key: u64) -> Result<(), Status>
Bind the given port with the given key.
Wraps zx_interrupt_bind.
Sourcepub fn raw_handle(&self) -> zx_handle_t
pub fn raw_handle(&self) -> zx_handle_t
Return the handle’s integer value.
Sourcepub fn into_raw(self) -> zx_handle_t
pub fn into_raw(self) -> zx_handle_t
Return the raw handle’s integer value without closing it when self is dropped.
Sourcepub fn as_handle_ref(&self) -> HandleRef<'_>
pub fn as_handle_ref(&self) -> HandleRef<'_>
Returns a HandleRef referring to this handle.
Sourcepub fn duplicate(&self, rights: Rights) -> Result<Self, Status>
pub fn duplicate(&self, rights: Rights) -> Result<Self, Status>
Wraps the
zx_handle_duplicate
syscall.
Sourcepub fn replace(self, rights: Rights) -> Result<Self, Status>
pub fn replace(self, rights: Rights) -> Result<Self, Status>
Wraps the
zx_handle_replace
syscall.
Sourcepub fn signal(
&self,
clear_mask: Signals,
set_mask: Signals,
) -> Result<(), Status>
pub fn signal( &self, clear_mask: Signals, set_mask: Signals, ) -> Result<(), Status>
Wraps the
zx_object_signal
syscall.
Sourcepub fn wait_one(
&self,
signals: Signals,
deadline: MonotonicInstant,
) -> WaitResult
pub fn wait_one( &self, signals: Signals, deadline: MonotonicInstant, ) -> WaitResult
Wraps the
zx_object_wait_one
syscall.
Sourcepub fn wait_async(
&self,
port: &Port,
key: u64,
signals: Signals,
options: WaitAsyncOpts,
) -> Result<(), Status>
pub fn wait_async( &self, port: &Port, key: u64, signals: Signals, options: WaitAsyncOpts, ) -> Result<(), Status>
Wraps the
zx_object_wait_async
syscall.
Sourcepub fn get_name(&self) -> Result<Name, Status>
pub fn get_name(&self) -> Result<Name, Status>
Wraps a call to the
zx_object_get_property
syscall for the ZX_PROP_NAME property.
Sourcepub fn set_name(&self, name: &Name) -> Result<(), Status>
pub fn set_name(&self, name: &Name) -> Result<(), Status>
Wraps a call to the
zx_object_set_property
syscall for the ZX_PROP_NAME property.
Sourcepub fn basic_info(&self) -> Result<HandleBasicInfo, Status>
pub fn basic_info(&self) -> Result<HandleBasicInfo, Status>
Wraps the
zx_object_get_info
syscall for the ZX_INFO_HANDLE_BASIC topic.
Sourcepub fn count_info(&self) -> Result<HandleCountInfo, Status>
pub fn count_info(&self) -> Result<HandleCountInfo, Status>
Wraps the
zx_object_get_info
syscall for the ZX_INFO_HANDLE_COUNT topic.
Source§impl<T: InterruptTimeline> Interrupt<VirtualInterruptKind, T>
impl<T: InterruptTimeline> Interrupt<VirtualInterruptKind, T>
Sourcepub fn create_virtual() -> Result<Self, Status>
pub fn create_virtual() -> Result<Self, Status>
Create a virtual interrupt.
Wraps zx_interrupt_create.
Trait Implementations§
Source§impl<K: InterruptKind, T: Timeline> AsHandleRef for Interrupt<K, T>
impl<K: InterruptKind, T: Timeline> AsHandleRef for Interrupt<K, T>
Source§fn as_handle_ref(&self) -> HandleRef<'_>
fn as_handle_ref(&self) -> HandleRef<'_>
object_wait_many.