pub struct Any<'a> { /* private fields */ }
Expand description
ASN.1 ANY
: represents any explicitly tagged ASN.1 value.
Technically ANY
hasn’t been a recommended part of ASN.1 since the X.209
revision from 1988. It was deprecated and replaced by Information Object
Classes in X.680 in 1994, and X.690 no longer refers to it whatsoever.
Nevertheless, this crate defines an Any
type as it remains a familiar
and useful concept which is still extensively used in things like
PKI-related RFCs.
Implementations§
source§impl<'a> Any<'a>
impl<'a> Any<'a>
sourcepub fn decode_into<T>(self) -> Result<T>where
T: DecodeValue<'a> + FixedTag,
pub fn decode_into<T>(self) -> Result<T>where
T: DecodeValue<'a> + FixedTag,
Attempt to decode this Any
type into the inner value.
sourcepub fn bit_string(self) -> Result<BitString<'a>>
pub fn bit_string(self) -> Result<BitString<'a>>
Attempt to decode an ASN.1 BIT STRING
.
sourcepub fn context_specific<T>(self) -> Result<ContextSpecific<T>>where
T: Decodable<'a>,
pub fn context_specific<T>(self) -> Result<ContextSpecific<T>>where
T: Decodable<'a>,
Attempt to decode an ASN.1 CONTEXT-SPECIFIC
field.
sourcepub fn generalized_time(self) -> Result<GeneralizedTime>
pub fn generalized_time(self) -> Result<GeneralizedTime>
Attempt to decode an ASN.1 GeneralizedTime
.
sourcepub fn ia5_string(self) -> Result<Ia5String<'a>>
pub fn ia5_string(self) -> Result<Ia5String<'a>>
Attempt to decode an ASN.1 IA5String
.
sourcepub fn octet_string(self) -> Result<OctetString<'a>>
pub fn octet_string(self) -> Result<OctetString<'a>>
Attempt to decode an ASN.1 OCTET STRING
.
sourcepub fn oid(self) -> Result<ObjectIdentifier>
pub fn oid(self) -> Result<ObjectIdentifier>
Attempt to decode an ASN.1 OBJECT IDENTIFIER
.
sourcepub fn printable_string(self) -> Result<PrintableString<'a>>
pub fn printable_string(self) -> Result<PrintableString<'a>>
Attempt to decode an ASN.1 PrintableString
.
sourcepub fn sequence<F, T>(self, f: F) -> Result<T>
pub fn sequence<F, T>(self, f: F) -> Result<T>
Attempt to decode this value an ASN.1 SEQUENCE
, creating a new
nested Decoder
and calling the provided argument with it.
sourcepub fn utf8_string(self) -> Result<Utf8String<'a>>
pub fn utf8_string(self) -> Result<Utf8String<'a>>
Attempt to decode an ASN.1 UTF8String
.
Trait Implementations§
source§impl EncodeValue for Any<'_>
impl EncodeValue for Any<'_>
source§impl<'a> From<&'a ObjectIdentifier> for Any<'a>
impl<'a> From<&'a ObjectIdentifier> for Any<'a>
source§fn from(oid: &'a ObjectIdentifier) -> Any<'a>
fn from(oid: &'a ObjectIdentifier) -> Any<'a>
source§impl<'a> From<OctetString<'a>> for Any<'a>
impl<'a> From<OctetString<'a>> for Any<'a>
source§fn from(octet_string: OctetString<'a>) -> Any<'a>
fn from(octet_string: OctetString<'a>) -> Any<'a>
source§impl<'a> From<PrintableString<'a>> for Any<'a>
impl<'a> From<PrintableString<'a>> for Any<'a>
source§fn from(printable_string: PrintableString<'a>) -> Any<'a>
fn from(printable_string: PrintableString<'a>) -> Any<'a>
source§impl<'a> From<Utf8String<'a>> for Any<'a>
impl<'a> From<Utf8String<'a>> for Any<'a>
source§fn from(printable_string: Utf8String<'a>) -> Any<'a>
fn from(printable_string: Utf8String<'a>) -> Any<'a>
source§impl<'a> Ord for Any<'a>
impl<'a> Ord for Any<'a>
source§impl<'a> PartialEq for Any<'a>
impl<'a> PartialEq for Any<'a>
source§impl<'a> PartialOrd for Any<'a>
impl<'a> PartialOrd for Any<'a>
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 moresource§impl TryFrom<Any<'_>> for GeneralizedTime
impl TryFrom<Any<'_>> for GeneralizedTime
source§impl TryFrom<Any<'_>> for ObjectIdentifier
impl TryFrom<Any<'_>> for ObjectIdentifier
source§impl<'a> TryFrom<Any<'a>> for OctetString<'a>
impl<'a> TryFrom<Any<'a>> for OctetString<'a>
source§impl<'a> TryFrom<Any<'a>> for PrintableString<'a>
impl<'a> TryFrom<Any<'a>> for PrintableString<'a>
source§impl<'a> TryFrom<Any<'a>> for SystemTime
impl<'a> TryFrom<Any<'a>> for SystemTime
source§impl<'a, const LIMBS: usize> TryFrom<Any<'a>> for UInt<LIMBS>where
UInt<LIMBS>: ArrayEncoding,
impl<'a, const LIMBS: usize> TryFrom<Any<'a>> for UInt<LIMBS>where
UInt<LIMBS>: ArrayEncoding,
source§impl<'a> TryFrom<Any<'a>> for Utf8String<'a>
impl<'a> TryFrom<Any<'a>> for Utf8String<'a>
impl<'a> Copy for Any<'a>
impl<'a> Eq for Any<'a>
impl<'a> StructuralEq for Any<'a>
impl<'a> StructuralPartialEq for Any<'a>
Auto Trait Implementations§
impl<'a> RefUnwindSafe for Any<'a>
impl<'a> Send for Any<'a>
impl<'a> Sync for Any<'a>
impl<'a> Unpin for Any<'a>
impl<'a> UnwindSafe for Any<'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
source§impl<T> Encodable for Twhere
T: EncodeValue + Tagged,
impl<T> Encodable for Twhere
T: EncodeValue + Tagged,
source§fn encoded_len(&self) -> Result<Length, Error>
fn encoded_len(&self) -> Result<Length, Error>
Compute the length of this value in bytes when encoded as ASN.1 DER.
source§fn encode(&self, encoder: &mut Encoder<'_>) -> Result<(), Error>
fn encode(&self, encoder: &mut Encoder<'_>) -> Result<(), Error>
Encode this value as ASN.1 DER using the provided Encoder
.