Struct extendr_api::iter::ListIter[][src]

pub struct ListIter { /* fields omitted */ }

Iterator over the objects in a VECSXP, EXPRSXP or WEAKREFSXP.

use extendr_api::prelude::*;
test! {
    let my_list = list!(a = 1, b = 2);
    let mut total = 0;
    for robj in my_list.as_list_iter().unwrap() {
      if let Some(val) = robj.as_integer() {
        total += val;
      }
    }
    assert_eq!(total, 3);
    
    for name in my_list.names().unwrap() {
       assert!(name == "a" || name == "b")
    }
}

Implementations

impl ListIter[src]

pub fn new() -> Self[src]

Trait Implementations

impl Clone for ListIter[src]

impl Debug for ListIter[src]

impl<'a> FromRobj<'a> for ListIter[src]

impl Iterator for ListIter[src]

type Item = Robj

The type of the elements being iterated over.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.