Struct Iob
pub struct Iob(/* private fields */);Expand description
An object representing a Zircon IOBuffer.
As essentially a subtype of NullableHandle, it can be freely interconverted.
Implementations§
§impl Iob
impl Iob
pub fn raw_handle(&self) -> u32
pub fn raw_handle(&self) -> u32
Return the handle’s integer value.
pub fn into_raw(self) -> u32
pub fn into_raw(self) -> u32
Return the raw handle’s integer value without closing it when self is dropped.
pub fn as_handle_ref(&self) -> Unowned<'_, NullableHandle>
pub fn as_handle_ref(&self) -> Unowned<'_, NullableHandle>
Returns a HandleRef referring to this handle.
pub fn duplicate(&self, rights: Rights) -> Result<Iob, Status>
pub fn duplicate(&self, rights: Rights) -> Result<Iob, Status>
Wraps the
zx_handle_duplicate
syscall.
pub 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.
pub fn wait_one(
&self,
signals: Signals,
deadline: Instant<MonotonicTimeline>,
) -> WaitResult
pub fn wait_one( &self, signals: Signals, deadline: Instant<MonotonicTimeline>, ) -> WaitResult
Wraps the
zx_object_wait_one
syscall.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
§impl Iob
impl Iob
pub fn create(
_options: IobOptions,
regions: &[IobRegion<'_>],
) -> Result<(Iob, Iob), Status>
pub fn create( _options: IobOptions, regions: &[IobRegion<'_>], ) -> Result<(Iob, Iob), Status>
Creates an IOBuffer.
Wraps the zx_iob_create syscall.
pub fn write(
&self,
options: IobWriteOptions,
region_index: u32,
data: &[u8],
) -> Result<(), Status>
pub fn write( &self, options: IobWriteOptions, region_index: u32, data: &[u8], ) -> Result<(), Status>
Performs a mediated write to an IOBuffer region.
Wraps the zx_iob_writev syscall.
pub fn writev(
&self,
_options: IobWriteOptions,
region_index: u32,
iovecs: &[IobIoSlice<'_>],
) -> Result<(), Status>
pub fn writev( &self, _options: IobWriteOptions, region_index: u32, iovecs: &[IobIoSlice<'_>], ) -> Result<(), Status>
Performs a mediated write (with vectors) to an IOBuffer region.
Wraps the
zx_stream_writev
syscall.
Trait Implementations§
§impl AsHandleRef for Iob
impl AsHandleRef for Iob
§fn as_handle_ref(&self) -> Unowned<'_, NullableHandle>
fn as_handle_ref(&self) -> Unowned<'_, NullableHandle>
object_wait_many.Source§impl CompatFrom<Iob> for Iob
Available on crate feature fuchsia only.
impl CompatFrom<Iob> for Iob
fuchsia only.Source§fn compat_from(value: Iob) -> Iob
fn compat_from(value: Iob) -> Iob
value into a value of this type.Source§impl<E> Encode<WireIob, E> for Iobwhere
E: HandleEncoder + ?Sized,
impl<E> Encode<WireIob, E> for Iobwhere
E: HandleEncoder + ?Sized,
Source§fn encode(
self,
encoder: &mut E,
out: &mut MaybeUninit<WireIob>,
constraint: <WireIob as Constrained>::Constraint,
) -> Result<(), EncodeError>
fn encode( self, encoder: &mut E, out: &mut MaybeUninit<WireIob>, constraint: <WireIob as Constrained>::Constraint, ) -> Result<(), EncodeError>
Source§const COPY_OPTIMIZATION: CopyOptimization<Self, W> = _
const COPY_OPTIMIZATION: CopyOptimization<Self, W> = _
Source§impl<E> EncodeOption<WireOptionalIob, E> for Iobwhere
E: HandleEncoder + ?Sized,
impl<E> EncodeOption<WireOptionalIob, E> for Iobwhere
E: HandleEncoder + ?Sized,
Source§fn encode_option(
this: Option<Iob>,
encoder: &mut E,
out: &mut MaybeUninit<WireOptionalIob>,
constraint: (),
) -> Result<(), EncodeError>
fn encode_option( this: Option<Iob>, encoder: &mut E, out: &mut MaybeUninit<WireOptionalIob>, constraint: (), ) -> Result<(), EncodeError>
§impl From<Iob> for NullableHandle
impl From<Iob> for NullableHandle
§fn from(x: Iob) -> NullableHandle
fn from(x: Iob) -> NullableHandle
§impl From<NullableHandle> for Iob
impl From<NullableHandle> for Iob
§fn from(handle: NullableHandle) -> Iob
fn from(handle: NullableHandle) -> Iob
Source§impl FromWire<WireIob> for Iob
impl FromWire<WireIob> for Iob
Source§const COPY_OPTIMIZATION: CopyOptimization<W, Self> = _
const COPY_OPTIMIZATION: CopyOptimization<W, Self> = _
Source§impl FromWireOption<WireOptionalIob> for Iob
impl FromWireOption<WireOptionalIob> for Iob
Source§fn from_wire_option(wire: WireOptionalIob) -> Option<Iob>
fn from_wire_option(wire: WireOptionalIob) -> Option<Iob>
wire to an option of this type.§impl HandleBased for Iob
impl HandleBased for Iob
§fn duplicate_handle(&self, rights: Rights) -> Result<Self, Status>
fn duplicate_handle(&self, rights: Rights) -> Result<Self, Status>
§fn replace_handle(self, rights: Rights) -> Result<Self, Status>
fn replace_handle(self, rights: Rights) -> Result<Self, Status>
§fn into_handle(self) -> NullableHandle
fn into_handle(self) -> NullableHandle
§fn from_handle(handle: NullableHandle) -> Self
fn from_handle(handle: NullableHandle) -> Self
§fn into_handle_based<H>(self) -> Hwhere
H: HandleBased,
fn into_handle_based<H>(self) -> Hwhere
H: HandleBased,
§fn from_handle_based<H>(h: H) -> Selfwhere
H: HandleBased,
fn from_handle_based<H>(h: H) -> Selfwhere
H: HandleBased,
fn is_invalid_handle(&self) -> bool
§impl Ord for Iob
impl Ord for Iob
§impl PartialOrd for Iob
impl PartialOrd for Iob
impl Eq for Iob
impl StructuralPartialEq for Iob
Auto Trait Implementations§
impl Freeze for Iob
impl RefUnwindSafe for Iob
impl Send for Iob
impl Sync for Iob
impl Unpin for Iob
impl UnwindSafe for Iob
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
§impl<T> EncodableAsHandle for Twhere
T: HandleBased,
impl<T> EncodableAsHandle for Twhere
T: HandleBased,
§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,
Source§impl<T, W> FromWireOption<WireBox<'_, W>> for Twhere
T: FromWire<W>,
impl<T, W> FromWireOption<WireBox<'_, W>> for Twhere
T: FromWire<W>,
Source§fn from_wire_option(wire: WireBox<'_, W>) -> Option<T>
fn from_wire_option(wire: WireBox<'_, W>) -> Option<T>
wire to an option of this type.Source§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
Source§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
T to Self