pub struct FrameWriter {
pub max_frame_size: usize,
}Available on crate feature
h2 only.Expand description
Writes frames to an output buffer. The field-block writer
(FrameWriter::write_field_block) splits the block across
HEADERS/CONTINUATION frames at the peer’s frame-size limit.
Fields§
§max_frame_size: usizeThe maximum payload size the peer accepts (the peer’s SETTINGS_MAX_FRAME_SIZE; 16384 by default).
Implementations§
Source§impl FrameWriter
impl FrameWriter
pub const fn new(max_frame_size: usize) -> FrameWriter
pub fn write_data( &self, out: &mut Vec<u8>, stream_id: u32, end_stream: bool, data: &[u8], )
Sourcepub fn write_headers(
&self,
out: &mut Vec<u8>,
stream_id: u32,
end_stream: bool,
end_headers: bool,
priority: Option<Priority>,
block: &[u8],
)
pub fn write_headers( &self, out: &mut Vec<u8>, stream_id: u32, end_stream: bool, end_headers: bool, priority: Option<Priority>, block: &[u8], )
Writes a HEADERS frame (single frame, no field-block splitting).
Sourcepub fn write_field_block(
&self,
out: &mut Vec<u8>,
stream_id: u32,
end_stream: bool,
block: &[u8],
)
pub fn write_field_block( &self, out: &mut Vec<u8>, stream_id: u32, end_stream: bool, block: &[u8], )
Writes a field block as a HEADERS frame (optionally with END_STREAM) followed by as many CONTINUATION frames as needed to stay within the peer’s frame-size limit.
pub fn write_priority( &self, out: &mut Vec<u8>, stream_id: u32, priority: Priority, )
pub fn write_reset(&self, out: &mut Vec<u8>, stream_id: u32, error_code: u32)
pub fn write_settings(&self, out: &mut Vec<u8>, settings: &[Setting])
pub fn write_settings_ack(&self, out: &mut Vec<u8>)
pub fn write_push_promise( &self, out: &mut Vec<u8>, stream_id: u32, promised_stream_id: u32, block: &[u8], )
pub fn write_ping(&self, out: &mut Vec<u8>, payload: &[u8; 8])
pub fn write_ping_ack(&self, out: &mut Vec<u8>, payload: &[u8; 8])
pub fn write_goaway( &self, out: &mut Vec<u8>, last_stream_id: u32, error_code: u32, debug: &[u8], )
pub fn write_window_update( &self, out: &mut Vec<u8>, stream_id: u32, increment: u32, )
pub fn write_continuation( &self, out: &mut Vec<u8>, stream_id: u32, end_headers: bool, block: &[u8], )
Trait Implementations§
Source§impl Clone for FrameWriter
impl Clone for FrameWriter
Source§fn clone(&self) -> FrameWriter
fn clone(&self) -> FrameWriter
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for FrameWriter
Source§impl Debug for FrameWriter
impl Debug for FrameWriter
Source§impl Default for FrameWriter
impl Default for FrameWriter
Source§fn default() -> FrameWriter
fn default() -> FrameWriter
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for FrameWriter
impl RefUnwindSafe for FrameWriter
impl Send for FrameWriter
impl Sync for FrameWriter
impl Unpin for FrameWriter
impl UnsafeUnpin for FrameWriter
impl UnwindSafe for FrameWriter
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