Skip to main content

Entry

Struct Entry 

Source
pub struct Entry { /* private fields */ }
Expand description

One journal entry: an RDF dataset with exactly one named graph, named by the entry’s IRI.

The entry IRI is chosen by the caller (the runtime derives it from the actor address and the position, see runtime-ontology#Stable Runtime IRIs) and is unique in the store. On append a store adds three stamps to the graph (Entry::stamp): rdf:type vt:JournalEntry, vt:actor and vt:position, so every entry read back is self-describing in vt: terms.

Implementations§

Source§

impl Entry

Source

pub fn new(name: NamedNode, triples: impl IntoIterator<Item = Triple>) -> Self

An entry named name holding triples.

Source

pub fn from_dataset(dataset: &Dataset) -> Result<Self, StoreError>

The entry encoded by a dataset, which must hold exactly one named graph, named by an IRI, and nothing in the default graph.

§Errors

StoreError::Invalid for any other dataset shape.

Source

pub fn name(&self) -> &NamedNode

The entry IRI, which is also the name of its graph.

Source

pub fn triples(&self) -> &Graph

The statements of the entry graph.

Source

pub fn quads(&self) -> Vec<Quad>

The quads of the entry: every statement in the graph named by the entry IRI.

Source

pub fn to_dataset(&self) -> Dataset

The entry as an RDF dataset with one named graph.

Source

pub fn position(&self) -> Option<Position>

The position stamped on the entry (<entry> vt:position n), if any.

Source

pub fn stamp( &self, actor: &NamedNode, position: Position, ) -> Result<Entry, StoreError>

The entry with the store’s stamps added: rdf:type vt:JournalEntry, vt:actor <actor> and vt:position n.

§Errors

StoreError::Invalid when the entry already states another actor or position.

Source

pub fn is_isomorphic(&self, other: &Entry) -> bool

True when both entries have the same IRI and isomorphic graphs (equal up to blank node labels, which a store may rename).

Source

pub fn has_blank_nodes(&self) -> bool

True when the graph contains a blank node anywhere.

Trait Implementations§

Source§

impl Clone for Entry

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Entry

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Entry

Source§

impl PartialEq for Entry

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Entry

Auto Trait Implementations§

§

impl Forget for Entry

§

impl Freeze for Entry

§

impl Move for Entry

§

impl RefUnwindSafe for Entry

§

impl Send for Entry

§

impl Sync for Entry

§

impl Unpin for Entry

§

impl UnsafeUnpin for Entry

§

impl UnwindSafe for Entry

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V