pub struct Http3Settings<'a> { /* private fields */ }Expand description
A validated borrowed HTTP/3 SETTINGS frame.
Implementations§
Source§impl<'a> Http3Settings<'a>
impl<'a> Http3Settings<'a>
Sourcepub fn parse(
bytes: &'a [u8],
maximum_payload: usize,
) -> Result<Self, Http3FramePayloadParseError>
pub fn parse( bytes: &'a [u8], maximum_payload: usize, ) -> Result<Self, Http3FramePayloadParseError>
Parses the first complete SETTINGS frame, enforcing the caller-provided payload maximum.
Sourcepub fn from_frame(
frame: Http3Frame<'a>,
) -> Result<Self, Http3FramePayloadParseError>
pub fn from_frame( frame: Http3Frame<'a>, ) -> Result<Self, Http3FramePayloadParseError>
Validates every SETTINGS identifier and value in wire order.
Sourcepub const fn frame(&self) -> Http3Frame<'a>
pub const fn frame(&self) -> Http3Frame<'a>
Returns the validated raw frame.
Sourcepub fn settings(&self) -> Http3SettingsIter<'a> ⓘ
pub fn settings(&self) -> Http3SettingsIter<'a> ⓘ
Iterates validated SETTINGS parameters in wire order without combining duplicates.
Sourcepub fn validate_semantics(
self,
) -> Result<Http3PeerSettings, Http3SettingsSemanticError>
pub fn validate_semantics( self, ) -> Result<Http3PeerSettings, Http3SettingsSemanticError>
Strictly validates SETTINGS semantics and returns effective known peer settings.
Unknown extension settings are ignored in the returned snapshot. This rejects duplicate identifiers even though HTTP/3 permits receivers to choose that policy.
Trait Implementations§
Source§impl<'a> Clone for Http3Settings<'a>
impl<'a> Clone for Http3Settings<'a>
impl<'a> Copy for Http3Settings<'a>
Source§impl<'a> Debug for Http3Settings<'a>
impl<'a> Debug for Http3Settings<'a>
impl<'a> Eq for Http3Settings<'a>
Source§impl<'a> PartialEq for Http3Settings<'a>
impl<'a> PartialEq for Http3Settings<'a>
impl<'a> StructuralPartialEq for Http3Settings<'a>
Auto Trait Implementations§
impl<'a> Freeze for Http3Settings<'a>
impl<'a> RefUnwindSafe for Http3Settings<'a>
impl<'a> Send for Http3Settings<'a>
impl<'a> Sync for Http3Settings<'a>
impl<'a> Unpin for Http3Settings<'a>
impl<'a> UnsafeUnpin for Http3Settings<'a>
impl<'a> UnwindSafe for Http3Settings<'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