Skip to main content

SubjectVisitor

Trait SubjectVisitor 

Source
pub trait SubjectVisitor<I: Interpretation> {
    type Ok;
    type Error;

    // Required methods
    fn predicate<L, T>(
        &mut self,
        predicate: &L,
        objects: &T,
    ) -> Result<(), Self::Error>
       where L: ?Sized + LinkedDataResource<I>,
             T: ?Sized + LinkedDataPredicateObjects<I>;
    fn reverse_predicate<L, T>(
        &mut self,
        predicate: &L,
        subjects: &T,
    ) -> Result<(), Self::Error>
       where L: ?Sized + LinkedDataResource<I>,
             T: ?Sized + LinkedDataPredicateObjects<I>;
    fn graph<T>(&mut self, value: &T) -> Result<(), Self::Error>
       where T: ?Sized + LinkedDataGraph<I>;
    fn include<T>(&mut self, value: &T) -> Result<(), Self::Error>
       where T: ?Sized + LinkedDataResource<I> + LinkedDataSubject<I>;
    fn end(self) -> Result<Self::Ok, Self::Error>;
}
Expand description

Visitor over the properties of an RDF subject.

Required Associated Types§

Source

type Ok

Value returned once the subject has been entirely visited.

Source

type Error

Error type.

Required Methods§

Source

fn predicate<L, T>( &mut self, predicate: &L, objects: &T, ) -> Result<(), Self::Error>

Visit a predicate of the graph.

Source

fn reverse_predicate<L, T>( &mut self, predicate: &L, subjects: &T, ) -> Result<(), Self::Error>

Visit a reverse predicate of the graph.

Source

fn graph<T>(&mut self, value: &T) -> Result<(), Self::Error>
where T: ?Sized + LinkedDataGraph<I>,

Visits a graph named by the subject.

Source

fn include<T>(&mut self, value: &T) -> Result<(), Self::Error>

Includes another subject in the same graph.

Source

fn end(self) -> Result<Self::Ok, Self::Error>

Ends the subject visit.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<I: Interpretation, S: SubjectVisitor<I>> SubjectVisitor<I> for &mut S

Source§

type Ok = ()

Source§

type Error = <S as SubjectVisitor<I>>::Error

Source§

fn predicate<L, T>( &mut self, predicate: &L, objects: &T, ) -> Result<(), Self::Error>

Source§

fn reverse_predicate<L, T>( &mut self, predicate: &L, subjects: &T, ) -> Result<(), Self::Error>

Source§

fn graph<T>(&mut self, value: &T) -> Result<(), Self::Error>
where T: ?Sized + LinkedDataGraph<I>,

Source§

fn include<T>(&mut self, value: &T) -> Result<(), Self::Error>

Source§

fn end(self) -> Result<Self::Ok, Self::Error>

Implementors§