pub struct PublisherProxy { /* private fields */ }
Implementations§
Source§impl PublisherProxy
impl PublisherProxy
Sourcepub fn take_event_stream(&self) -> PublisherEventStream
pub fn take_event_stream(&self) -> PublisherEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn publish(
&self,
data_sink: &str,
data: Vmo,
vmo_token: EventPair,
) -> Result<(), Error>
pub fn publish( &self, data_sink: &str, data: Vmo, vmo_token: EventPair, ) -> Result<(), Error>
The program runtime sends a string naming a data_sink
and transfers
the handle to a VMO containing the data
it wants published
there. The data_sink
string identifies a type of data, and the
VMO’s object name can specifically identify the data set in this VMO.
The ZX_PROP_VMO_CONTENT_SIZE property should be set on the VMO to
indicate the precise size of the data in case that is not whole pages;
however, leaving it unset (i.e. 0) is acceptable when the whole-page
size of the VMO is the intended size of dump. Code instrumentation
runtimes use this to deliver large binary trace results. In such cases,
the client can resize the VMO and should use the vmo_token
handle to
signal when the VMO is ready for processing by the recipient. The
receiver will not process the VMO until the peer of vmo_token
handle
is closed. Therefore, the client should retain the peer handle until
it has completed all writes to the VMO.
Trait Implementations§
Source§impl Clone for PublisherProxy
impl Clone for PublisherProxy
Source§fn clone(&self) -> PublisherProxy
fn clone(&self) -> PublisherProxy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for PublisherProxy
impl Debug for PublisherProxy
Source§impl Proxy for PublisherProxy
impl Proxy for PublisherProxy
Source§type Protocol = PublisherMarker
type Protocol = PublisherMarker
Proxy
controls.Source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Auto Trait Implementations§
impl Freeze for PublisherProxy
impl !RefUnwindSafe for PublisherProxy
impl Send for PublisherProxy
impl Sync for PublisherProxy
impl Unpin for PublisherProxy
impl !UnwindSafe for PublisherProxy
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
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)
clone_to_uninit
)