pub struct BufferCollectionToken;Expand description
The type corresponding to the BufferCollectionToken protocol.
A [fuchsia.sysmem2/BufferCollectionToken] is not a buffer collection, but
rather is a way to identify a specific potential shared buffer collection,
and a way to distribute that potential shared buffer collection to
additional participants prior to the buffer collection allocating any
buffers.
Epitaphs are not used in this protocol.
We use a channel for the BufferCollectionToken instead of a single
eventpair (pair) because this way we can detect error conditions like a
participant failing mid-create.
Trait Implementations§
Source§impl Debug for BufferCollectionToken
impl Debug for BufferCollectionToken
Source§impl<___H, ___T> DispatchClientMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenClientHandler<___T> + Send,
___T: Transport,
impl<___H, ___T> DispatchClientMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenClientHandler<___T> + Send,
___T: Transport,
Source§impl<___H, ___T> DispatchLocalClientMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenLocalClientHandler<___T>,
___T: Transport,
impl<___H, ___T> DispatchLocalClientMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenLocalClientHandler<___T>,
___T: Transport,
Source§impl<___H, ___T> DispatchLocalServerMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenLocalServerHandler<___T>,
___T: Transport,
for<'de> NodeSetNameRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugClientInfoRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugTimeoutLogDeadlineRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeIsAlternateForRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetWeakOkRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeAttachNodeTrackingRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateSyncRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenCreateBufferCollectionTokenGroupRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
impl<___H, ___T> DispatchLocalServerMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenLocalServerHandler<___T>,
___T: Transport,
for<'de> NodeSetNameRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugClientInfoRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugTimeoutLogDeadlineRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeIsAlternateForRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetWeakOkRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeAttachNodeTrackingRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateSyncRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenCreateBufferCollectionTokenGroupRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
Source§impl<___H, ___T> DispatchServerMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenServerHandler<___T> + Send,
___T: Transport,
for<'de> NodeSetNameRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugClientInfoRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugTimeoutLogDeadlineRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeIsAlternateForRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetWeakOkRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeAttachNodeTrackingRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateSyncRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenCreateBufferCollectionTokenGroupRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
impl<___H, ___T> DispatchServerMessage<___H, ___T> for BufferCollectionTokenwhere
___H: BufferCollectionTokenServerHandler<___T> + Send,
___T: Transport,
for<'de> NodeSetNameRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugClientInfoRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetDebugTimeoutLogDeadlineRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeIsAlternateForRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeSetWeakOkRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> NodeAttachNodeTrackingRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateSyncRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenDuplicateRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
for<'de> BufferCollectionTokenCreateBufferCollectionTokenGroupRequest<'de>: Decode<<<___T as Transport>::RecvBuffer as AsDecoder<'de>>::Decoder, Constraint = ()>,
Source§impl<___T> HasConnectionHandles<___T> for BufferCollectionTokenwhere
___T: Transport,
impl<___T> HasConnectionHandles<___T> for BufferCollectionTokenwhere
___T: Transport,
Source§impl HasTransport for BufferCollectionToken
Available on Fuchsia only.
impl HasTransport for BufferCollectionToken
Available on Fuchsia only.
Source§impl PartialEq for BufferCollectionToken
impl PartialEq for BufferCollectionToken
Source§fn eq(&self, other: &BufferCollectionToken) -> bool
fn eq(&self, other: &BufferCollectionToken) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for BufferCollectionToken
Auto Trait Implementations§
impl Freeze for BufferCollectionToken
impl RefUnwindSafe for BufferCollectionToken
impl Send for BufferCollectionToken
impl Sync for BufferCollectionToken
impl Unpin for BufferCollectionToken
impl UnsafeUnpin for BufferCollectionToken
impl UnwindSafe for BufferCollectionToken
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
§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
Converts the given service transport handle of type
T to [Self]