Struct asn1_rs::SequenceIterator 
source · [−]pub struct SequenceIterator<'a, T, F, E = Error> where
    F: ASN1Parser,  { /* private fields */ }Expand description
An Iterator over binary data, parsing elements of type T
This helps parsing SEQUENCE OF items of type T. The type of parser
(BER/DER) is specified using the generic parameter F of this struct.
Note: the iterator must start on the sequence contents, not the sequence itself.
Examples
use asn1_rs::{DerParser, Integer, SequenceIterator};
let data = &[0x30, 0x6, 0x2, 0x1, 0x1, 0x2, 0x1, 0x2];
for (idx, item) in SequenceIterator::<Integer, DerParser>::new(&data[2..]).enumerate() {
    let item = item.unwrap(); // parsing could have failed
    let i = item.as_u32().unwrap(); // integer can be negative, or too large to fit into u32
    assert_eq!(i as usize, idx + 1);
}Implementations
sourceimpl<'a, T, F, E> SequenceIterator<'a, T, F, E> where
    F: ASN1Parser, 
 
impl<'a, T, F, E> SequenceIterator<'a, T, F, E> where
    F: ASN1Parser, 
Trait Implementations
Auto Trait Implementations
impl<'a, T, F, E> RefUnwindSafe for SequenceIterator<'a, T, F, E> where
    E: RefUnwindSafe,
    F: RefUnwindSafe,
    T: RefUnwindSafe, 
impl<'a, T, F, E> Send for SequenceIterator<'a, T, F, E> where
    E: Send,
    F: Send,
    T: Send, 
impl<'a, T, F, E> Sync for SequenceIterator<'a, T, F, E> where
    E: Sync,
    F: Sync,
    T: Sync, 
impl<'a, T, F, E> Unpin for SequenceIterator<'a, T, F, E> where
    E: Unpin,
    F: Unpin,
    T: Unpin, 
impl<'a, T, F, E> UnwindSafe for SequenceIterator<'a, T, F, E> where
    E: UnwindSafe,
    F: UnwindSafe,
    T: UnwindSafe, 
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