Struct ed25519_dalek::pkcs8::spki::der::TagNumber
pub struct TagNumber(/* private fields */);
pkcs8
only.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§
§impl TagNumber
impl TagNumber
pub const fn new(byte: u8) -> TagNumber
pub const fn new(byte: u8) -> TagNumber
Create a new tag number (const-friendly).
Panics if the tag number is greater than 30
.
For a fallible conversion, use TryFrom
instead.
pub fn application(self, constructed: bool) -> Tag
pub fn application(self, constructed: bool) -> Tag
Create an APPLICATION
tag with this tag number.
pub 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§
§impl Ord for TagNumber
impl Ord for TagNumber
§impl PartialOrd for TagNumber
impl PartialOrd for TagNumber
§fn partial_cmp(&self, other: &TagNumber) -> Option<Ordering>
fn partial_cmp(&self, other: &TagNumber) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more