pub struct ObjectIdentifier { /* private fields */ }Expand description
Executable OBJECT IDENTIFIER value.
Keeping the first two arcs separate avoids a second allocation when parsing: the
remaining subidentifiers are already produced as one Vec by RepeatTillEnd.
Implementations§
Trait Implementations§
Source§impl ByteLen<ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature alloc only.
impl ByteLen<ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature
alloc only.Source§impl DeepView for ObjectIdentifier
Available on crate feature alloc only.
impl DeepView for ObjectIdentifier
Available on crate feature
alloc only.Source§impl DerOrd<ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature alloc only.
impl DerOrd<ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature
alloc only.Source§proof fn lemma_der_serialize_len(&self, value: ObjectIdentifierSpec)
proof fn lemma_der_serialize_len(&self, value: ObjectIdentifierSpec)
Source§open spec fn der_remaining(
&self,
value: ObjectIdentifierSpec,
state: ObjectIdentifierDerState,
) -> Seq<u8>
open spec fn der_remaining( &self, value: ObjectIdentifierSpec, state: ObjectIdentifierDerState, ) -> Seq<u8>
{
if state.in_left {
Base128Fmt::<true>
.der_remaining(crate::asn1::oid::oid_first_subidentifier(value), state.left)
+ RepeatTillEnd(Base128Fmt::<true>).der_remaining(value.rest, state.right)
} else {
RepeatTillEnd(Base128Fmt::<true>).der_remaining(value.rest, state.right)
}
}Source§open spec fn der_state_valid(
&self,
value: ObjectIdentifierSpec,
state: ObjectIdentifierDerState,
) -> bool
open spec fn der_state_valid( &self, value: ObjectIdentifierSpec, state: ObjectIdentifierDerState, ) -> bool
{
&&& Base128Fmt::<true>
.der_state_valid(crate::asn1::oid::oid_first_subidentifier(value), state.left)
&&& RepeatTillEnd(Base128Fmt::<true>).der_state_valid(value.rest, state.right)
&&& !state.in_left
==> Base128Fmt::<true>
.der_remaining(crate::asn1::oid::oid_first_subidentifier(value), state.left)
.len() == 0
}Source§exec fn der_start(&self, o: &ObjectIdentifier) -> state : ObjectIdentifierDerState
exec fn der_start(&self, o: &ObjectIdentifier) -> state : ObjectIdentifierDerState
Source§exec fn der_next(
&self,
o: &ObjectIdentifier,
state: &mut ObjectIdentifierDerState,
) -> next : Option<u8>
exec fn der_next( &self, o: &ObjectIdentifier, state: &mut ObjectIdentifierDerState, ) -> next : Option<u8>
Source§impl Prepare<ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature alloc only.
impl Prepare<ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature
alloc only.Source§impl<Output: OutputBuf> Serializer<Output, ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature alloc only.
impl<Output: OutputBuf> Serializer<Output, ObjectIdentifier> for ObjectIdentifierFmt
Available on crate feature
alloc only.Source§exec fn serialize_into(&self, v: &ObjectIdentifier, obuf: &mut Output)
exec fn serialize_into(&self, v: &ObjectIdentifier, obuf: &mut Output)
Auto Trait Implementations§
impl Freeze for ObjectIdentifier
impl RefUnwindSafe for ObjectIdentifier
impl Send for ObjectIdentifier
impl Sync for ObjectIdentifier
impl Unpin for ObjectIdentifier
impl UnsafeUnpin for ObjectIdentifier
impl UnwindSafe for ObjectIdentifier
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