pub struct TagNumber(_);
Expand description
ASN.1 tag numbers (i.e. lower 5 bits of a Tag
).
From X.690 Section 8.1.2.2:
bits 5 to 1 shall encode the number of the tag as a binary integer with bit 5 as the most significant bit.
This library supports tag numbers ranging from zero to 30 (inclusive), which can be represented as a single identifier octet.
Section 8.1.2.4 describes how to support multi-byte tag numbers, which are
encoded by using a leading tag number of 31 (0b11111
). This library
deliberately does not support this: tag numbers greater than 30 are
disallowed.
Implementations
sourceimpl TagNumber
impl TagNumber
sourcepub const fn new(byte: u8) -> Self
pub const fn new(byte: u8) -> Self
Create a new tag number (const-friendly).
Panics if the tag number is greater than 30
.
For a fallible conversion, use TryFrom
instead.
sourcepub fn application(self, constructed: bool) -> Tag
pub fn application(self, constructed: bool) -> Tag
Create an APPLICATION
tag with this tag number.
sourcepub fn context_specific(self, constructed: bool) -> Tag
pub fn context_specific(self, constructed: bool) -> Tag
Create a CONTEXT-SPECIFIC
tag with this tag number.
Trait Implementations
sourceimpl Ord for TagNumber
impl Ord for TagNumber
sourceimpl PartialOrd<TagNumber> for TagNumber
impl PartialOrd<TagNumber> for TagNumber
sourcefn partial_cmp(&self, other: &TagNumber) -> Option<Ordering>
fn partial_cmp(&self, other: &TagNumber) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for TagNumber
impl Eq for TagNumber
impl StructuralEq for TagNumber
impl StructuralPartialEq for TagNumber
Auto Trait Implementations
impl RefUnwindSafe for TagNumber
impl Send for TagNumber
impl Sync for TagNumber
impl Unpin for TagNumber
impl UnwindSafe for TagNumber
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more