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>
source§fn eq(&self, other: &DoubleVlanSlice<'a>) -> bool
fn eq(&self, other: &DoubleVlanSlice<'a>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.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