Struct etherparse::DoubleVlanSlice
source · pub struct DoubleVlanSlice<'a> { /* private fields */ }Expand description
Slice containing a VLAN header & payload.
Implementations§
source§impl<'a> DoubleVlanSlice<'a>
impl<'a> DoubleVlanSlice<'a>
sourcepub fn from_slice(
slice: &'a [u8],
) -> Result<DoubleVlanSlice<'a>, HeaderSliceError>
pub fn from_slice( slice: &'a [u8], ) -> Result<DoubleVlanSlice<'a>, HeaderSliceError>
Try creating a DoubleVlanSlice from a slice containing the
VLAN header & payload.
sourcepub fn outer(&self) -> SingleVlanSlice<'_>
pub fn outer(&self) -> SingleVlanSlice<'_>
Outer VLAN header & payload (includes header of inner vlan header).
sourcepub fn inner(&self) -> SingleVlanSlice<'_>
pub fn inner(&self) -> SingleVlanSlice<'_>
Inner VLAN header & payload.
sourcepub fn to_header(&self) -> DoubleVlanHeader
pub fn to_header(&self) -> DoubleVlanHeader
Decode all the fields and copy the results to a DoubleVlanHeader struct
sourcepub fn payload(&self) -> EtherPayloadSlice<'a>
pub fn payload(&self) -> EtherPayloadSlice<'a>
Returns the slice containing the payload & ether type identifying it’s content type after bother VLAN headers.
sourcepub fn payload_slice(&self) -> &'a [u8] ⓘ
pub fn payload_slice(&self) -> &'a [u8] ⓘ
Returns the slice containing the payload after both VLAN headers.
sourcepub const fn header_len(&self) -> usize
pub const fn header_len(&self) -> usize
Length of the VLAN header in bytes (equal to
crate::DoubleVlanHeader::LEN).
Trait Implementations§
source§impl<'a> Clone for DoubleVlanSlice<'a>
impl<'a> Clone for DoubleVlanSlice<'a>
source§fn clone(&self) -> DoubleVlanSlice<'a>
fn clone(&self) -> DoubleVlanSlice<'a>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl<'a> Debug for DoubleVlanSlice<'a>
impl<'a> Debug for DoubleVlanSlice<'a>
source§impl<'a> PartialEq for DoubleVlanSlice<'a>
impl<'a> PartialEq for DoubleVlanSlice<'a>
impl<'a> Eq for DoubleVlanSlice<'a>
impl<'a> StructuralPartialEq for DoubleVlanSlice<'a>
Auto Trait Implementations§
impl<'a> Freeze for DoubleVlanSlice<'a>
impl<'a> RefUnwindSafe for DoubleVlanSlice<'a>
impl<'a> Send for DoubleVlanSlice<'a>
impl<'a> Sync for DoubleVlanSlice<'a>
impl<'a> Unpin for DoubleVlanSlice<'a>
impl<'a> UnwindSafe for DoubleVlanSlice<'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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)