[][src]Trait sophia::quad::Quad

pub trait Quad<'a> {
    type TermData: TermData + 'a;
    fn s(&self) -> &Term<Self::TermData>;
fn p(&self) -> &Term<Self::TermData>;
fn o(&self) -> &Term<Self::TermData>;
fn g(&self) -> Option<&Term<Self::TermData>>; fn as_triple(self) -> QuadAsTriple<Self>
    where
        Self: Sized
, { ... } }

This trait represents an abstract RDF quad, and provides convenient methods for working with quads.

Associated Types

type TermData: TermData + 'a

Loading content...

Required methods

fn s(&self) -> &Term<Self::TermData>

The subject of this quad.

fn p(&self) -> &Term<Self::TermData>

The predicate of this quad.

fn o(&self) -> &Term<Self::TermData>

The object of this quad.

fn g(&self) -> Option<&Term<Self::TermData>>

The (optional) graph name

Loading content...

Provided methods

fn as_triple(self) -> QuadAsTriple<Self> where
    Self: Sized

Triple adapter owning this quad.

Loading content...

Implementations on Foreign Types

impl<'a, T> Quad<'a> for [Term<T>; 4] where
    T: TermData + 'a, 
[src]

type TermData = T

impl<'a, T> Quad<'a> for [&'a Term<T>; 4] where
    T: TermData + 'a, 
[src]

type TermData = T

impl<'a, T> Quad<'a> for (T, Option<Term<T::TermData>>) where
    T: Triple<'a>, 
[src]

type TermData = T::TermData

impl<'a, T> Quad<'a> for (T, Option<&'a Term<T::TermData>>) where
    T: Triple<'a>, 
[src]

type TermData = T::TermData

impl<'a, Q: Quad<'a>> Quad<'a> for &'a Q where
    Q: Quad<'a>, 
[src]

type TermData = <Q as Quad<'a>>::TermData

Loading content...

Implementors

impl<'a> Quad<'a> for NqQuad[src]

type TermData = Cow<'a, str>

impl<'a, T: Triple<'a>> Quad<'a> for TripleAsQuad<T>[src]

type TermData = T::TermData

impl<'a, T: Triple<'a>> Quad<'a> for TripleAsQuadFrom<'a, T>[src]

type TermData = T::TermData

Loading content...