pub struct Block2RequestData { /* private fields */ }
Expand description
Request data from a Block2 request
As the M flag is unused in requests, it is not captured in here (and ignored at construction).
Implementations
sourceimpl Block2RequestData
impl Block2RequestData
sourcepub fn from_message(
message: &impl ReadableMessage
) -> Result<Self, BadBlock2Option>
pub fn from_message(
message: &impl ReadableMessage
) -> Result<Self, BadBlock2Option>
Extract a request block 2 value from a request message.
Absence of the option is not an error and results in the default value to be returned; exceeding length or duplicate entries are an error and are indicated by returning an error, which should be responded to with a Bad Option error.
sourcepub fn from_option(option: &impl MessageOption) -> Result<Self, BadBlock2Option>
pub fn from_option(option: &impl MessageOption) -> Result<Self, BadBlock2Option>
Extract a request block 2 value from a single option. An error is indicated on a malformed (ie. overly long) option.
Compared to Block2RequestData::from_message(), this can easily be packed into a single loop that processes all options and fails on unknown critical ones; on the other hand, this does not automate the check for duplicate options.
Panics
In debug mode if the option is not Block2
pub fn to_option_value(&self, more: bool) -> u32
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Block2RequestData
impl Send for Block2RequestData
impl Sync for Block2RequestData
impl Unpin for Block2RequestData
impl UnwindSafe for Block2RequestData
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more