pub enum Message<'a> {
Delivered(Delivery<'a>),
Request {
destination: DestinationHash,
link_id: LinkId,
request_id: RequestId,
requester: Option<IdentityHash>,
path_hash: RequestPathHash,
requested_at: InstantMillis,
rtt: RttMillis,
data: &'a [u8],
},
Response {
link_id: LinkId,
request_id: RequestId,
data: &'a [u8],
},
ResponseSegment {
link_id: LinkId,
request_id: RequestId,
segment_index: u64,
total_segments: u64,
data: &'a [u8],
},
Resource {
link_id: LinkId,
hash: ResourceHash,
metadata: Option<&'a [u8]>,
data: &'a [u8],
},
ResourceNeedsDecompression {
link_id: LinkId,
hash: ResourceHash,
stream: &'a [u8],
uncompressed_data_bytes: u64,
},
ResourceSegment {
link_id: LinkId,
original_hash: ResourceHash,
segment_index: u64,
total_segments: u64,
metadata: Option<&'a [u8]>,
data: &'a [u8],
},
ChannelMessage {
link_id: LinkId,
message_type: MessageType,
data: &'a [u8],
},
}Expand description
The data plane: bytes the app owns.
Variants§
Delivered(Delivery<'a>)
Request
Fields
§
destination: DestinationHash§
requester: Option<IdentityHash>§
path_hash: RequestPathHash§
requested_at: InstantMillisResponse
ResponseSegment
One in-order segment of a split response; the request’s settlement arrives as a Diagnostic::CommandSettled when the final segment assembles.
Resource
Fields
§
hash: ResourceHashResourceNeedsDecompression
ResourceSegment
Fields
§
original_hash: ResourceHashChannelMessage
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for Message<'a>
impl<'a> RefUnwindSafe for Message<'a>
impl<'a> Send for Message<'a>
impl<'a> Sync for Message<'a>
impl<'a> Unpin for Message<'a>
impl<'a> UnsafeUnpin for Message<'a>
impl<'a> UnwindSafe for Message<'a>
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