Struct asn1_rs::Any

source ·
pub struct Any<'a> {
    pub header: Header<'a>,
    pub data: &'a [u8],
}
Expand description

The Any object is not strictly an ASN.1 type, but holds a generic description of any object that could be encoded.

It contains a header, and either a reference to or owned data for the object content.

Note: this type is only provided in borrowed version (i.e. it cannot own the inner data).

Fields§

§header: Header<'a>

The object header

§data: &'a [u8]

The object contents

Implementations§

source§

impl<'a> Any<'a>

source

pub const fn new(header: Header<'a>, data: &'a [u8]) -> Self

Create a new Any from BER/DER header and content

source

pub const fn from_tag_and_data(tag: Tag, data: &'a [u8]) -> Self

Create a new Any from a tag, and BER/DER content

source

pub const fn class(&self) -> Class

Return the Class of this object

source

pub fn with_class(self, class: Class) -> Self

Update the class of the current object

source

pub const fn tag(&self) -> Tag

Return the Tag of this object

source

pub fn with_tag(self, tag: Tag) -> Self

Update the tag of the current object

source

pub fn as_bytes(&self) -> &'a [u8]

Get the bytes representation of the content

source

pub fn parse_ber<T>(&self) -> ParseResult<'a, T>
where T: FromBer<'a>,

source

pub fn from_ber_and_then<F, T, E>( class: Class, tag: u32, bytes: &'a [u8], op: F, ) -> ParseResult<'a, T, E>
where F: FnOnce(&'a [u8]) -> ParseResult<'_, T, E>, E: From<Error>,

Parse a BER value and apply the provided parsing function to content

After parsing, the sequence object and header are discarded.

source

pub fn from_der_and_then<F, T, E>( class: Class, tag: u32, bytes: &'a [u8], op: F, ) -> ParseResult<'a, T, E>
where F: FnOnce(&'a [u8]) -> ParseResult<'_, T, E>, E: From<Error>,

Parse a DER value and apply the provided parsing function to content

After parsing, the sequence object and header are discarded.

source

pub fn parse_der<T>(&self) -> ParseResult<'a, T>
where T: FromDer<'a>,

source

pub fn parse_ber_content<'i>( i: &'i [u8], header: &Header<'_>, ) -> ParseResult<'i, &'i [u8]>

Get the content following a BER header

source

pub fn parse_der_content<'i>( i: &'i [u8], header: &Header<'_>, ) -> ParseResult<'i, &'i [u8]>

Get the content following a DER header

source§

impl<'a> Any<'a>

source

pub fn bitstring(self) -> Result<BitString<'a>>

Attempt to convert object to BitString<'a> (ASN.1 type: BIT STRING).

source

pub fn bmpstring(self) -> Result<BmpString<'a>>

Attempt to convert object to BmpString<'a> (ASN.1 type: BMPString).

source

pub fn bool(self) -> Result<bool>

Attempt to convert object to bool (ASN.1 type: BOOLEAN).

source

pub fn boolean(self) -> Result<Boolean>

Attempt to convert object to Boolean (ASN.1 type: BOOLEAN).

source

pub fn embedded_pdv(self) -> Result<EmbeddedPdv<'a>>

Attempt to convert object to EmbeddedPdv<'a> (ASN.1 type: EMBEDDED PDV).

source

pub fn enumerated(self) -> Result<Enumerated>

Attempt to convert object to Enumerated (ASN.1 type: ENUMERATED).

source

pub fn generalizedtime(self) -> Result<GeneralizedTime>

Attempt to convert object to GeneralizedTime (ASN.1 type: GeneralizedTime).

source

pub fn generalstring(self) -> Result<GeneralString<'a>>

Attempt to convert object to GeneralString<'a> (ASN.1 type: GeneralString).

source

pub fn graphicstring(self) -> Result<GraphicString<'a>>

Attempt to convert object to GraphicString<'a> (ASN.1 type: GraphicString).

source

pub fn i8(self) -> Result<i8>

Attempt to convert object to i8 (ASN.1 type: INTEGER).

source

pub fn i16(self) -> Result<i16>

Attempt to convert object to i16 (ASN.1 type: INTEGER).

source

pub fn i32(self) -> Result<i32>

Attempt to convert object to i32 (ASN.1 type: INTEGER).

source

pub fn i64(self) -> Result<i64>

Attempt to convert object to i64 (ASN.1 type: INTEGER).

source

pub fn i128(self) -> Result<i128>

Attempt to convert object to i128 (ASN.1 type: INTEGER).

source

pub fn ia5string(self) -> Result<Ia5String<'a>>

Attempt to convert object to Ia5String<'a> (ASN.1 type: IA5String).

source

pub fn integer(self) -> Result<Integer<'a>>

Attempt to convert object to Integer<'a> (ASN.1 type: INTEGER).

source

pub fn null(self) -> Result<Null>

Attempt to convert object to Null (ASN.1 type: NULL).

source

pub fn numericstring(self) -> Result<NumericString<'a>>

Attempt to convert object to NumericString<'a> (ASN.1 type: NumericString).

source

pub fn objectdescriptor(self) -> Result<ObjectDescriptor<'a>>

Attempt to convert object to ObjectDescriptor<'a> (ASN.1 type: ObjectDescriptor).

source

pub fn octetstring(self) -> Result<OctetString<'a>>

Attempt to convert object to OctetString<'a> (ASN.1 type: OCTET STRING).

source

pub fn oid(self) -> Result<Oid<'a>>

Attempt to convert object to Oid<'a> (ASN.1 type: OBJECT IDENTIFIER).

source

pub fn real(self) -> Result<Real>

Attempt to convert object to Real (ASN.1 type: REAL).

source

pub fn relative_oid(self) -> Result<Oid<'a>>

Attempt to convert object to Oid (ASN.1 type: RELATIVE-OID).

source

pub fn printablestring(self) -> Result<PrintableString<'a>>

Attempt to convert object to PrintableString<'a> (ASN.1 type: PrintableString).

source

pub fn sequence(self) -> Result<Sequence<'a>>

Attempt to convert object to Sequence<'a> (ASN.1 type: SEQUENCE).

source

pub fn set(self) -> Result<Set<'a>>

Attempt to convert object to Set<'a> (ASN.1 type: SET).

source

pub fn str(self) -> Result<&'a str>

Attempt to convert object to &'a str (ASN.1 type: UTF8String).

source

pub fn string(self) -> Result<String>

Attempt to convert object to String (ASN.1 type: UTF8String).

source

pub fn teletexstring(self) -> Result<TeletexString<'a>>

Attempt to convert object to TeletexString<'a> (ASN.1 type: TeletexString).

source

pub fn u8(self) -> Result<u8>

Attempt to convert object to u8 (ASN.1 type: INTEGER).

source

pub fn u16(self) -> Result<u16>

Attempt to convert object to u16 (ASN.1 type: INTEGER).

source

pub fn u32(self) -> Result<u32>

Attempt to convert object to u32 (ASN.1 type: INTEGER).

source

pub fn u64(self) -> Result<u64>

Attempt to convert object to u64 (ASN.1 type: INTEGER).

source

pub fn u128(self) -> Result<u128>

Attempt to convert object to u128 (ASN.1 type: INTEGER).

source

pub fn universalstring(self) -> Result<UniversalString<'a>>

Attempt to convert object to UniversalString<'a> (ASN.1 type: UniversalString).

source

pub fn utctime(self) -> Result<UtcTime>

Attempt to convert object to UtcTime (ASN.1 type: UTCTime).

source

pub fn utf8string(self) -> Result<Utf8String<'a>>

Attempt to convert object to Utf8String<'a> (ASN.1 type: UTF8String).

source

pub fn videotexstring(self) -> Result<VideotexString<'a>>

Attempt to convert object to VideotexString<'a> (ASN.1 type: VideotexString).

source

pub fn visiblestring(self) -> Result<VisibleString<'a>>

Attempt to convert object to VisibleString<'a> (ASN.1 type: VisibleString).

source

pub fn as_bitstring(&self) -> Result<BitString<'_>>

Attempt to create ASN.1 type BITSTRING from this object.

source

pub fn as_bmpstring(&self) -> Result<BmpString<'_>>

Attempt to create ASN.1 type BMPString from this object.

source

pub fn as_bool(&self) -> Result<bool>

Attempt to create ASN.1 type BOOLEAN from this object.

source

pub fn as_boolean(&self) -> Result<Boolean>

Attempt to create ASN.1 type BOOLEAN from this object.

source

pub fn as_embedded_pdv(&self) -> Result<EmbeddedPdv<'_>>

Attempt to create ASN.1 type EMBEDDED PDV from this object.

source

pub fn as_endofcontent(&self) -> Result<EndOfContent>

Attempt to create ASN.1 type END OF CONTENT (not a real ASN.1 type) from this object.

source

pub fn as_enumerated(&self) -> Result<Enumerated>

Attempt to create ASN.1 type ENUMERATED from this object.

source

pub fn as_generalizedtime(&self) -> Result<GeneralizedTime>

Attempt to create ASN.1 type GeneralizedTime from this object.

source

pub fn as_generalstring(&self) -> Result<GeneralString<'_>>

Attempt to create ASN.1 type GeneralString from this object.

source

pub fn as_graphicstring(&self) -> Result<GraphicString<'_>>

Attempt to create ASN.1 type GraphicString from this object.

source

pub fn as_i8(&self) -> Result<i8>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_i16(&self) -> Result<i16>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_i32(&self) -> Result<i32>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_i64(&self) -> Result<i64>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_i128(&self) -> Result<i128>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_ia5string(&self) -> Result<Ia5String<'_>>

Attempt to create ASN.1 type IA5String from this object.

source

pub fn as_integer(&self) -> Result<Integer<'_>>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_null(&self) -> Result<Null>

Attempt to create ASN.1 type NULL from this object.

source

pub fn as_numericstring(&self) -> Result<NumericString<'_>>

Attempt to create ASN.1 type NumericString from this object.

source

pub fn as_objectdescriptor(&self) -> Result<ObjectDescriptor<'_>>

Attempt to create ASN.1 type OBJECT IDENTIFIER from this object.

source

pub fn as_octetstring(&self) -> Result<OctetString<'_>>

Attempt to create ASN.1 type OCTET STRING from this object.

source

pub fn as_oid(&self) -> Result<Oid<'_>>

Attempt to create ASN.1 type OBJECT IDENTIFIER from this object.

source

pub fn as_real(&self) -> Result<Real>

Attempt to create ASN.1 type REAL from this object.

source

pub fn as_relative_oid(&self) -> Result<Oid<'a>>

Attempt to create ASN.1 type RELATIVE-OID from this object.

source

pub fn as_printablestring(&self) -> Result<PrintableString<'_>>

Attempt to create ASN.1 type PrintableString from this object.

source

pub fn as_sequence(&self) -> Result<Sequence<'_>>

Attempt to create ASN.1 type SEQUENCE from this object.

source

pub fn as_set(&self) -> Result<Set<'_>>

Attempt to create ASN.1 type SET from this object.

source

pub fn as_str(&self) -> Result<&str>

Attempt to create ASN.1 type UTF8String from this object.

source

pub fn as_string(&self) -> Result<String>

Attempt to create ASN.1 type UTF8String from this object.

source

pub fn as_teletexstring(&self) -> Result<TeletexString<'_>>

Attempt to create ASN.1 type TeletexString from this object.

source

pub fn as_u8(&self) -> Result<u8>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_u16(&self) -> Result<u16>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_u32(&self) -> Result<u32>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_u64(&self) -> Result<u64>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_u128(&self) -> Result<u128>

Attempt to create ASN.1 type INTEGER from this object.

source

pub fn as_universalstring(&self) -> Result<UniversalString<'_>>

Attempt to create ASN.1 type UniversalString from this object.

source

pub fn as_utctime(&self) -> Result<UtcTime>

Attempt to create ASN.1 type UTCTime from this object.

source

pub fn as_utf8string(&self) -> Result<Utf8String<'_>>

Attempt to create ASN.1 type UTF8String from this object.

source

pub fn as_videotexstring(&self) -> Result<VideotexString<'_>>

Attempt to create ASN.1 type VideotexString from this object.

source

pub fn as_visiblestring(&self) -> Result<VisibleString<'_>>

Attempt to create ASN.1 type VisibleString from this object.

source

pub fn as_optional<'b, T>(&'b self) -> Result<Option<T>>
where T: TryFrom<&'b Any<'a>, Error = Error>, 'a: 'b,

Attempt to create an Option<T> from this object.

source

pub fn as_tagged_explicit<T, E, const CLASS: u8, const TAG: u32>( &self, ) -> Result<TaggedValue<T, E, Explicit, CLASS, TAG>, E>
where T: FromBer<'a, E>, E: From<Error>,

Attempt to create a tagged value (EXPLICIT) from this object.

source

pub fn as_tagged_implicit<T, E, const CLASS: u8, const TAG: u32>( &self, ) -> Result<TaggedValue<T, E, Implicit, CLASS, TAG>, E>
where T: TryFrom<Any<'a>, Error = E> + Tagged, E: From<Error>,

Attempt to create a tagged value (IMPLICIT) from this object.

Trait Implementations§

source§

impl CheckDerConstraints for Any<'_>

source§

impl<'a> Clone for Any<'a>

source§

fn clone(&self) -> Any<'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a> Debug for Any<'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl DynTagged for Any<'_>

source§

fn tag(&self) -> Tag

source§

impl<'a> FromBer<'a> for Any<'a>

source§

fn from_ber(bytes: &'a [u8]) -> ParseResult<'_, Self>

Attempt to parse input bytes into a BER object
source§

impl<'a> FromDer<'a> for Any<'a>

source§

fn from_der(bytes: &'a [u8]) -> ParseResult<'_, Self>

Attempt to parse input bytes into a DER object (enforcing constraints)
source§

impl<'a> PartialEq for Any<'a>

source§

fn eq(&self, other: &Any<'a>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl ToDer for Any<'_>

source§

fn write_der_raw(&self, writer: &mut dyn Write) -> SerializeResult<usize>

Similar to using to_der, but uses header without computing length value

source§

fn to_der_len(&self) -> Result<usize>

Get the length of the object (including the header), when encoded
source§

fn write_der_header(&self, writer: &mut dyn Write) -> SerializeResult<usize>

Attempt to write the DER header to this writer.
source§

fn write_der_content(&self, writer: &mut dyn Write) -> SerializeResult<usize>

Attempt to write the DER content (all except header) to this writer.
source§

fn to_der_vec(&self) -> SerializeResult<Vec<u8>>

Write the DER encoded representation to a newly allocated Vec<u8>.
source§

fn to_der_vec_raw(&self) -> SerializeResult<Vec<u8>>

Similar to using to_vec, but uses provided values without changes. This can generate an invalid encoding for a DER object.
source§

fn write_der(&self, writer: &mut dyn Write) -> SerializeResult<usize>

Attempt to write the DER encoded representation (header and content) into this writer. Read more
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for &'a str

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<&'a str>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for BitString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<BitString<'a>>

Performs the conversion.
source§

impl<'a, 'r> TryFrom<&'r Any<'a>> for BmpString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'r Any<'a>) -> Result<BmpString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Boolean

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Boolean>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for EmbeddedPdv<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for EndOfContent

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<EndOfContent>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Enumerated

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Enumerated>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for GeneralString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<GeneralString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for GeneralizedTime

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<GeneralizedTime>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for GraphicString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<GraphicString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Ia5String<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Ia5String<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Integer<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Integer<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Null

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Null>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for NumericString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<NumericString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for ObjectDescriptor<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<ObjectDescriptor<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for OctetString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<OctetString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Oid<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for PrintableString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<PrintableString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Real

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Sequence<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Sequence<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Set<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Set<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for String

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<String>

Performs the conversion.
source§

impl<'a, 'b, T, E, const CLASS: u8, const TAG: u32> TryFrom<&'b Any<'a>> for TaggedValue<T, E, Explicit, CLASS, TAG>
where T: FromBer<'a, E>, E: From<Error>,

§

type Error = E

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self, E>

Performs the conversion.
source§

impl<'a, 'b, E, T, const CLASS: u8, const TAG: u32> TryFrom<&'b Any<'a>> for TaggedValue<T, E, Implicit, CLASS, TAG>
where T: TryFrom<Any<'a>, Error = E> + Tagged, E: From<Error>,

§

type Error = E

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self, E>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for TeletexString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<TeletexString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for UniversalString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<UniversalString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for UtcTime

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<UtcTime>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for Utf8String<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Utf8String<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for VideotexString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<VideotexString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for VisibleString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<VisibleString<'a>>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for bool

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<bool>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for i128

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for i16

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for i32

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for i64

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for i8

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for u128

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for u16

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for u32

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for u64

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a, 'b> TryFrom<&'b Any<'a>> for u8

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: &'b Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for &'a [u8]

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<&'a [u8]>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for &'a str

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<&'a str>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for ()

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<()>

Performs the conversion.
source§

impl<'a, T> TryFrom<Any<'a>> for BTreeSet<T>
where T: FromBer<'a> + Ord,

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for BitString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<BitString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for BmpString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<BmpString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Boolean

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Boolean>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for EmbeddedPdv<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for EndOfContent

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<EndOfContent>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Enumerated

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Enumerated>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for GeneralString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<GeneralString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for GeneralizedTime

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<GeneralizedTime>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for GraphicString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<GraphicString<'a>>

Performs the conversion.
source§

impl<'a, T> TryFrom<Any<'a>> for HashSet<T>
where T: FromBer<'a> + Hash + Eq,

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Ia5String<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Ia5String<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Integer<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Integer<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Null

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Null>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for NumericString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<NumericString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for ObjectDescriptor<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<ObjectDescriptor<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for OctetString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<OctetString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Oid<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for PrintableString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<PrintableString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Real

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Sequence<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Sequence<'a>>

Performs the conversion.
source§

impl<'a, T> TryFrom<Any<'a>> for SequenceOf<T>
where T: FromBer<'a>,

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Set<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Set<'a>>

Performs the conversion.
source§

impl<'a, T> TryFrom<Any<'a>> for SetOf<T>
where T: FromBer<'a>,

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for String

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<String>

Performs the conversion.
source§

impl<'a, T, E, const CLASS: u8, const TAG: u32> TryFrom<Any<'a>> for TaggedValue<T, E, Explicit, CLASS, TAG>
where T: FromBer<'a, E>, E: From<Error>,

§

type Error = E

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self, E>

Performs the conversion.
source§

impl<'a, T, E, const CLASS: u8, const TAG: u32> TryFrom<Any<'a>> for TaggedValue<T, E, Implicit, CLASS, TAG>
where T: TryFrom<Any<'a>, Error = E> + Tagged, E: From<Error>,

§

type Error = E

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self, E>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for TeletexString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<TeletexString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for UniversalString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<UniversalString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for UtcTime

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<UtcTime>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for Utf8String<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Utf8String<'a>>

Performs the conversion.
source§

impl<'a, T> TryFrom<Any<'a>> for Vec<T>
where T: FromBer<'a>,

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for VideotexString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<VideotexString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for VisibleString<'a>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<VisibleString<'a>>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for bool

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<bool>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for f32

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<f32>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for f64

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<f64>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for i128

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for i16

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for i32

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for i64

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for i8

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for u128

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for u16

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for u32

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for u64

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl<'a> TryFrom<Any<'a>> for u8

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(any: Any<'a>) -> Result<Self>

Performs the conversion.
source§

impl DerAutoDerive for Any<'_>

source§

impl<'a> Eq for Any<'a>

source§

impl<'a> StructuralPartialEq for Any<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for Any<'a>

§

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> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

source§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

source§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

source§

fn implicit( self, class: Class, constructed: bool, tag: u32, ) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<'a, T, E> FromBer<'a, E> for T
where T: TryFrom<Any<'a>, Error = E>, E: From<Error>,

source§

fn from_ber(bytes: &'a [u8]) -> Result<(&'a [u8], T), Err<E>>

Attempt to parse input bytes into a BER object
source§

impl<'a, T, E> FromDer<'a, E> for T
where T: TryFrom<Any<'a>, Error = E> + CheckDerConstraints + DerAutoDerive, E: From<Error> + Display + Debug,

source§

fn from_der(bytes: &'a [u8]) -> Result<(&'a [u8], T), Err<E>>

Attempt to parse input bytes into a DER object (enforcing constraints)
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.