pub struct StreamParts<'a> {
pub window: &'a mut i32,
pub rbuffer: &'a mut Kawa<Checkout>,
pub wbuffer: &'a mut Kawa<Checkout>,
pub received_end_of_stream: &'a mut bool,
pub data_received: &'a mut usize,
pub context: &'a mut HttpContext,
pub metrics: &'a mut SessionMetrics,
pub retry_buffer: &'a mut Option<ReplayCapture>,
pub front_bound_to_backend: &'a mut bool,
}Expand description
This struct allows to mutably borrow the read and write buffers (dependant on the position) as well as the context and metrics of a Stream at the same time
Fields§
§window: &'a mut i32This connection’s send window for the stream: Stream::back_window
on a backend connection, Stream::front_window on a frontend one.
rbuffer: &'a mut Kawa<Checkout>§wbuffer: &'a mut Kawa<Checkout>§received_end_of_stream: &'a mut boolTracks whether end_of_stream has been received on the read side of this connection.
data_received: &'a mut usizeTracks total DATA payload bytes received on the read side (for content-length validation).
context: &'a mut HttpContext§metrics: &'a mut SessionMetrics§retry_buffer: &'a mut Option<ReplayCapture>Stream::retry_buffer, reachable from the write path so the H1
client can record the exact bytes it hands the upstream socket before
kawa::Kawa::consume drops them from the front buffer.
front_bound_to_backend: &'a mut boolStream::front_bound_to_backend, set by the H2 write path when a
backend connection encodes the request.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for StreamParts<'a>
impl<'a> !Send for StreamParts<'a>
impl<'a> !Sync for StreamParts<'a>
impl<'a> !UnwindSafe for StreamParts<'a>
impl<'a> Freeze for StreamParts<'a>
impl<'a> Unpin for StreamParts<'a>
impl<'a> UnsafeUnpin for StreamParts<'a>
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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