pub struct TLVControl {
pub tag_type: TLVTagType,
pub value_type: TLVValueType,
}Expand description
Represents the control byte of a TLV element (i.e. the tag type and the value type).
Fields§
§tag_type: TLVTagType§value_type: TLVValueTypeImplementations§
Source§impl TLVControl
impl TLVControl
Sourcepub const fn new(tag_type: TLVTagType, value_type: TLVValueType) -> TLVControl
pub const fn new(tag_type: TLVTagType, value_type: TLVValueType) -> TLVControl
Create a new TLV control byte by parsing the provided tag type and value type.
Sourcepub fn parse(control: u8) -> Result<TLVControl, Error>
pub fn parse(control: u8) -> Result<TLVControl, Error>
Create a new TLV control byte by parsing the provided control byte into a tag type and a value type.
The function will return an error if the provided control byte is invalid.
Sourcepub fn is_container_start(&self) -> bool
pub fn is_container_start(&self) -> bool
Return true if the control byte represents a container start (struct, array or list).
Sourcepub fn is_container_end(&self) -> bool
pub fn is_container_end(&self) -> bool
Return true if the control byte represents a container end.
Sourcepub fn confirm_container_end(&self) -> Result<(), Error>
pub fn confirm_container_end(&self) -> Result<(), Error>
Return an error if the control byte does not represent a container start.
Trait Implementations§
Source§impl Clone for TLVControl
impl Clone for TLVControl
Source§fn clone(&self) -> TLVControl
fn clone(&self) -> TLVControl
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for TLVControl
Source§impl Debug for TLVControl
impl Debug for TLVControl
Source§impl Display for TLVControl
impl Display for TLVControl
impl Eq for TLVControl
Source§impl Hash for TLVControl
impl Hash for TLVControl
Source§impl PartialEq for TLVControl
impl PartialEq for TLVControl
impl StructuralPartialEq for TLVControl
Auto Trait Implementations§
impl Freeze for TLVControl
impl RefUnwindSafe for TLVControl
impl Send for TLVControl
impl Sync for TLVControl
impl Unpin for TLVControl
impl UnsafeUnpin for TLVControl
impl UnwindSafe for TLVControl
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T, I> IntoFallibleInit<T> for Iwhere
I: Init<T>,
impl<T, I> IntoFallibleInit<T> for Iwhere
I: Init<T>,
Source§fn into_fallible<E>(self) -> impl Init<T, E>
fn into_fallible<E>(self) -> impl Init<T, E>
Convert the infallible initializer to a fallible one.
Source§impl<Source, Target> OctetsInto<Target> for Sourcewhere
Target: OctetsFrom<Source>,
impl<Source, Target> OctetsInto<Target> for Sourcewhere
Target: OctetsFrom<Source>,
type Error = <Target as OctetsFrom<Source>>::Error
Source§fn try_octets_into(
self,
) -> Result<Target, <Source as OctetsInto<Target>>::Error>
fn try_octets_into( self, ) -> Result<Target, <Source as OctetsInto<Target>>::Error>
Performs the conversion.
Source§fn octets_into(self) -> Target
fn octets_into(self) -> Target
Performs an infallible conversion.