[][src]Trait grdf::Iter

pub trait Iter<'a, T: 'a> {
    type Triples: Iterator<Item = Triple<&'a T>>;
    type Subjects: Iterator<Item = (&'a T, Self::Predicates)>;
    type Predicates: Iterator<Item = (&'a T, Self::Objects)>;
    type Objects: Iterator<Item = &'a T>;
}

Graph iterators.

This trait is needed because currently the Rust compiler has trouble correctly handling generic associated types. When rustc will be ready, all the types defined in this trait will be defined in the Graph trait. Until then we need it.

Associated Types

type Triples: Iterator<Item = Triple<&'a T>>

Triple iterators.

type Subjects: Iterator<Item = (&'a T, Self::Predicates)>

Graph subjects iterator.

Each subject is given with its associated predicates (and objects).

type Predicates: Iterator<Item = (&'a T, Self::Objects)>

Subject predicates iterator.

Iterate through all the predicates associated to a given subject. Each predicate is also given with the associated objects.

type Objects: Iterator<Item = &'a T>

Objects iterator.

Iterate through a set of objects.

Loading content...

Implementors

impl<'a, T: 'a + Hash + Eq> Iter<'a, T> for Iterators[src]

type Objects = Objects<'a, T>

type Predicates = Predicates<'a, T>

type Subjects = Subjects<'a, T>

type Triples = Iter<'a, T>

Loading content...