Tuple3VarULE

Struct Tuple3VarULE 

Source
pub struct Tuple3VarULE<A: ?Sized, B: ?Sized, C: ?Sized, Format: VarZeroVecFormat = Index16> { /* private fields */ }
Expand description

VarULE type for tuples with 3 elements. See module docs for more information

Implementations§

Source§

impl<A: VarULE + ?Sized, B: VarULE + ?Sized, C: VarULE + ?Sized, Format: VarZeroVecFormat> Tuple3VarULE<A, B, C, Format>

Source

pub fn a(&self) -> &A

Get field 0of this tuple

Source

pub fn b(&self) -> &B

Get field 1of this tuple

Source

pub fn c(&self) -> &C

Get field 2of this tuple

Trait Implementations§

Source§

impl<A: Debug + VarULE + ?Sized, B: Debug + VarULE + ?Sized, C: Debug + VarULE + ?Sized, Format: VarZeroVecFormat> Debug for Tuple3VarULE<A, B, C, Format>

Source§

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

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

impl<A, B, C, AE, BE, CE, Format> EncodeAsVarULE<Tuple3VarULE<A, B, C, Format>> for (AE, BE, CE)
where A: VarULE + ?Sized, B: VarULE + ?Sized, C: VarULE + ?Sized, AE: EncodeAsVarULE<A>, BE: EncodeAsVarULE<B>, CE: EncodeAsVarULE<C>, Format: VarZeroVecFormat,

Source§

fn encode_var_ule_as_slices<R>(&self, _: impl FnOnce(&[&[u8]]) -> R) -> R

Calls cb with a piecewise list of byte slices that when concatenated produce the memory pattern of the corresponding instance of T. Read more
Source§

fn encode_var_ule_len(&self) -> usize

Return the length, in bytes, of the corresponding VarULE type
Source§

fn encode_var_ule_write(&self, dst: &mut [u8])

Write the corresponding VarULE type to the dst buffer. dst should be the size of Self::encode_var_ule_len()
Source§

impl<A: Ord + VarULE + ?Sized, B: Ord + VarULE + ?Sized, C: Ord + VarULE + ?Sized, Format: VarZeroVecFormat> Ord for Tuple3VarULE<A, B, C, Format>

Source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
Source§

impl<A: PartialEq + VarULE + ?Sized, B: PartialEq + VarULE + ?Sized, C: PartialEq + VarULE + ?Sized, Format: VarZeroVecFormat> PartialEq for Tuple3VarULE<A, B, C, Format>

Source§

fn eq(&self, other: &Self) -> 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<A: PartialOrd + VarULE + ?Sized, B: PartialOrd + VarULE + ?Sized, C: PartialOrd + VarULE + ?Sized, Format: VarZeroVecFormat> PartialOrd for Tuple3VarULE<A, B, C, Format>

Source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl<A: VarULE + ?Sized, B: VarULE + ?Sized, C: VarULE + ?Sized, Format: VarZeroVecFormat> ToOwned for Tuple3VarULE<A, B, C, Format>

Source§

type Owned = Box<Tuple3VarULE<A, B, C, Format>>

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> Self::Owned

Creates owned data from borrowed data, usually by cloning. Read more
1.63.0 · Source§

fn clone_into(&self, target: &mut Self::Owned)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<A: VarULE + ?Sized, B: VarULE + ?Sized, C: VarULE + ?Sized, Format: VarZeroVecFormat> VarULE for Tuple3VarULE<A, B, C, Format>

Source§

fn validate_bytes(bytes: &[u8]) -> Result<(), UleError>

Validates a byte slice, &[u8]. Read more
Source§

unsafe fn from_bytes_unchecked(bytes: &[u8]) -> &Self

Takes a byte slice, &[u8], and return it as &Self with the same lifetime, assuming that this byte slice has previously been run through Self::parse_bytes() with success. Read more
Source§

fn parse_bytes(bytes: &[u8]) -> Result<&Self, UleError>

Parses a byte slice, &[u8], and return it as &Self with the same lifetime. Read more
Source§

fn as_bytes(&self) -> &[u8]

Given &Self, returns a &[u8] with the same lifetime. Read more
Source§

fn to_boxed(&self) -> Box<Self>

Allocate on the heap as a Box<T>
Source§

impl<'a, A, B, C, AE, BE, CE, Format> ZeroFrom<'a, Tuple3VarULE<A, B, C, Format>> for (AE, BE, CE)
where A: VarULE + ?Sized, B: VarULE + ?Sized, C: VarULE + ?Sized, AE: ZeroFrom<'a, A>, BE: ZeroFrom<'a, B>, CE: ZeroFrom<'a, C>, Format: VarZeroVecFormat,

Source§

fn zero_from(other: &'a Tuple3VarULE<A, B, C, Format>) -> Self

Clone the other C into a struct that may retain references into C.
Source§

impl<A: Eq + VarULE + ?Sized, B: Eq + VarULE + ?Sized, C: Eq + VarULE + ?Sized, Format: VarZeroVecFormat> Eq for Tuple3VarULE<A, B, C, Format>

Auto Trait Implementations§

§

impl<A, B, C, Format> Freeze for Tuple3VarULE<A, B, C, Format>
where A: ?Sized, B: ?Sized, C: ?Sized,

§

impl<A, B, C, Format> RefUnwindSafe for Tuple3VarULE<A, B, C, Format>

§

impl<A, B, C, Format> Send for Tuple3VarULE<A, B, C, Format>
where A: Send + ?Sized, B: Send + ?Sized, C: Send + ?Sized, Format: Send,

§

impl<A, B, C, Format = Index16> !Sized for Tuple3VarULE<A, B, C, Format>

§

impl<A, B, C, Format> Sync for Tuple3VarULE<A, B, C, Format>
where A: Sync + ?Sized, B: Sync + ?Sized, C: Sync + ?Sized, Format: Sync,

§

impl<A, B, C, Format> Unpin for Tuple3VarULE<A, B, C, Format>
where A: Unpin + ?Sized, B: Unpin + ?Sized, C: Unpin + ?Sized, Format: Unpin,

§

impl<A, B, C, Format> UnwindSafe for Tuple3VarULE<A, B, C, Format>
where A: UnwindSafe + ?Sized, B: UnwindSafe + ?Sized, C: UnwindSafe + ?Sized, Format: UnwindSafe,

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> EncodeAsVarULE<T> for T
where T: VarULE + ?Sized,

Source§

fn encode_var_ule_as_slices<R>(&self, cb: impl FnOnce(&[&[u8]]) -> R) -> R

Calls cb with a piecewise list of byte slices that when concatenated produce the memory pattern of the corresponding instance of T. Read more
Source§

fn encode_var_ule_len(&self) -> usize

Return the length, in bytes, of the corresponding VarULE type
Source§

fn encode_var_ule_write(&self, dst: &mut [u8])

Write the corresponding VarULE type to the dst buffer. dst should be the size of Self::encode_var_ule_len()

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: (unsized)