NumberOfOptions

Struct NumberOfOptions 

Source
pub struct NumberOfOptions(/* private fields */);
Expand description

Two 4-bit fields packed into a single byte.

Used for the NumberOfOptions field in entries, which contains the number of options in the first and second option runs (each 4 bits, values 0-15).

Implementations§

Source§

impl NumberOfOptions

Source

pub fn new() -> Self

Creates a new NumberOfOptions with both fields set to 0.

Source

pub fn from_options(options1: u8, options2: u8) -> Self

Creates NumberOfOptions from two 4-bit values.

§Parameters
  • options1 - Number of options in first run (0-15, high nibble)
  • options2 - Number of options in second run (0-15, low nibble)
§Returns

Packed NumberOfOptions value

Source

pub fn from_u8(value: u8) -> Self

Creates from raw u8 value.

§Parameters
  • value - Raw byte value from wire format
Source

pub fn options1(&self) -> u8

Gets the number of options for the first option run (high nibble).

§Returns

Number of options (0-15)

Source

pub fn options2(&self) -> u8

Gets the number of options for the second option run (low nibble).

§Returns

Number of options (0-15)

Source

pub fn set_options1(&mut self, value: u8)

Sets the number of options for the first option run.

§Parameters
  • value - Number of options (0-15, will be masked)
Source

pub fn set_options2(&mut self, value: u8)

Sets the number of options for the second option run.

§Parameters
  • value - Number of options (0-15, will be masked)
Source

pub fn as_u8(&self) -> u8

Converts to raw u8 value for wire format.

Trait Implementations§

Source§

impl Clone for NumberOfOptions

Source§

fn clone(&self) -> NumberOfOptions

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for NumberOfOptions

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for NumberOfOptions

Source§

fn eq(&self, other: &NumberOfOptions) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for NumberOfOptions

Source§

impl Eq for NumberOfOptions

Source§

impl StructuralPartialEq for NumberOfOptions

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.