pub struct ItemsProxy { /* private fields */ }
Implementations§
Source§impl ItemsProxy
impl ItemsProxy
Sourcepub fn take_event_stream(&self) -> ItemsEventStream
pub fn take_event_stream(&self) -> ItemsEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn get(
&self,
type_: u32,
extra: u32,
) -> QueryResponseFut<(Option<Vmo>, u32), DefaultFuchsiaResourceDialect>
pub fn get( &self, type_: u32, extra: u32, ) -> QueryResponseFut<(Option<Vmo>, u32), DefaultFuchsiaResourceDialect>
Get a payload
for a boot item of type
and extra
.
NOTE: We return the length
of the item, as VMOs must be page-aligned.
TODO: Refactor API: https://fxbug.dev/42109921
For a list of type
s, refer to <lib/zbi-format/zbi.h>.
For a list of extra
s, refer to <lib/zbi-format/driver-config.h>.
Sourcepub fn get2(
&self,
type_: u32,
extra: Option<&Extra>,
) -> QueryResponseFut<ItemsGet2Result, DefaultFuchsiaResourceDialect>
pub fn get2( &self, type_: u32, extra: Option<&Extra>, ) -> QueryResponseFut<ItemsGet2Result, DefaultFuchsiaResourceDialect>
Get all stored items of type
, optionally also restricted by extra
. Note that
length is returned for each item as VMOs are page-aligned.
Returns ZX_ERR_NOT_SUPPORTED if this is an untracked item which will never be stored.
Sourcepub fn get_bootloader_file(
&self,
filename: &str,
) -> QueryResponseFut<Option<Vmo>, DefaultFuchsiaResourceDialect>
pub fn get_bootloader_file( &self, filename: &str, ) -> QueryResponseFut<Option<Vmo>, DefaultFuchsiaResourceDialect>
Gets the payload
for a ZBI_TYPE_BOOTLOADER_FILE
boot item.
Note: ZX_PROP_VMO_CONTENT_SIZE will be set to the actual file content size
Trait Implementations§
Source§impl Clone for ItemsProxy
impl Clone for ItemsProxy
Source§fn clone(&self) -> ItemsProxy
fn clone(&self) -> ItemsProxy
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ItemsProxy
impl Debug for ItemsProxy
Source§impl ItemsProxyInterface for ItemsProxy
impl ItemsProxyInterface for ItemsProxy
type GetResponseFut = QueryResponseFut<(Option<Vmo>, u32)>
type Get2ResponseFut = QueryResponseFut<Result<Vec<RetrievedItems>, i32>>
type GetBootloaderFileResponseFut = QueryResponseFut<Option<Vmo>>
fn get(&self, type_: u32, extra: u32) -> Self::GetResponseFut
fn get2(&self, type_: u32, extra: Option<&Extra>) -> Self::Get2ResponseFut
fn get_bootloader_file( &self, filename: &str, ) -> Self::GetBootloaderFileResponseFut
Source§impl Proxy for ItemsProxy
impl Proxy for ItemsProxy
Source§type Protocol = ItemsMarker
type Protocol = ItemsMarker
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
Auto Trait Implementations§
impl Freeze for ItemsProxy
impl !RefUnwindSafe for ItemsProxy
impl Send for ItemsProxy
impl Sync for ItemsProxy
impl Unpin for ItemsProxy
impl !UnwindSafe for ItemsProxy
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> 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.