pub struct CommonProxy { /* private fields */ }
Implementations§
Source§impl CommonProxy
impl CommonProxy
Sourcepub fn new(channel: AsyncChannel) -> Self
pub fn new(channel: AsyncChannel) -> Self
Create a new Proxy for fuchsia.hardware.block.driver/Common.
Sourcepub fn take_event_stream(&self) -> CommonEventStream
pub fn take_event_stream(&self) -> CommonEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn query(
&self,
) -> QueryResponseFut<(BlockInfo, u64), DefaultFuchsiaResourceDialect>
pub fn query( &self, ) -> QueryResponseFut<(BlockInfo, u64), DefaultFuchsiaResourceDialect>
Obtains the parameters of the block device (block_info_t
) and the
required size of block_txn_t
. The block_txn_t
s submitted via
Queue()
must have block_op_size_out - sizeof(block_op_t)
bytes
available at the end of the structure for the use of the driver.
Sourcepub fn queue(
&self,
txn: BlockOp,
) -> QueryResponseFut<(i32, BlockOp), DefaultFuchsiaResourceDialect>
pub fn queue( &self, txn: BlockOp, ) -> QueryResponseFut<(i32, BlockOp), DefaultFuchsiaResourceDialect>
Submits an I/O request for processing. Ownership of op
is transferred
to callee until completion_cb
is invoked. Success or failure will be
reported via the completion_cb
. This callback may be called before the
Queue()
method returns.
Trait Implementations§
Source§impl Clone for CommonProxy
impl Clone for CommonProxy
Source§fn clone(&self) -> CommonProxy
fn clone(&self) -> CommonProxy
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 CommonProxyInterface for CommonProxy
impl CommonProxyInterface for CommonProxy
type QueryResponseFut = QueryResponseFut<(BlockInfo, u64)>
type QueueResponseFut = QueryResponseFut<(i32, BlockOp)>
fn query(&self) -> Self::QueryResponseFut
fn queue(&self, txn: BlockOp) -> Self::QueueResponseFut
Source§impl Debug for CommonProxy
impl Debug for CommonProxy
Source§impl Proxy for CommonProxy
impl Proxy for CommonProxy
Source§type Protocol = CommonMarker
type Protocol = CommonMarker
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 CommonProxy
impl !RefUnwindSafe for CommonProxy
impl Send for CommonProxy
impl Sync for CommonProxy
impl Unpin for CommonProxy
impl !UnwindSafe for CommonProxy
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.