pub struct TriGSerializer { /* private fields */ }
Expand description
A TriG serializer.
Support for TriG-star is available behind the rdf-star
feature.
use oxrdf::{NamedNodeRef, QuadRef};
use oxrdf::vocab::rdf;
use oxttl::TriGSerializer;
let mut serializer = TriGSerializer::new()
.with_prefix("schema", "http://schema.org/")?
.for_writer(Vec::new());
serializer.serialize_quad(QuadRef::new(
NamedNodeRef::new("http://example.com#me")?,
rdf::TYPE,
NamedNodeRef::new("http://schema.org/Person")?,
NamedNodeRef::new("http://example.com")?,
))?;
assert_eq!(
b"@prefix schema: <http://schema.org/> .\n<http://example.com> {\n\t<http://example.com#me> a schema:Person .\n}\n",
serializer.finish()?.as_slice()
);
Implementations§
Source§impl TriGSerializer
impl TriGSerializer
Sourcepub fn new() -> Self
pub fn new() -> Self
Builds a new TriGSerializer
.
pub fn with_prefix( self, prefix_name: impl Into<String>, prefix_iri: impl Into<String>, ) -> Result<Self, IriParseError>
Sourcepub fn with_base_iri(
self,
base_iri: impl Into<String>,
) -> Result<Self, IriParseError>
pub fn with_base_iri( self, base_iri: impl Into<String>, ) -> Result<Self, IriParseError>
Adds a base IRI to the serialization.
use oxrdf::vocab::rdf;
use oxrdf::{NamedNodeRef, QuadRef};
use oxttl::TriGSerializer;
let mut serializer = TriGSerializer::new()
.with_base_iri("http://example.com")?
.with_prefix("ex", "http://example.com/ns#")?
.for_writer(Vec::new());
serializer.serialize_quad(QuadRef::new(
NamedNodeRef::new("http://example.com/me")?,
rdf::TYPE,
NamedNodeRef::new("http://example.com/ns#Person")?,
NamedNodeRef::new("http://example.com")?,
))?;
assert_eq!(
b"@base <http://example.com> .\n@prefix ex: </ns#> .\n<> {\n\t</me> a ex:Person .\n}\n",
serializer.finish()?.as_slice()
);
Sourcepub fn for_writer<W: Write>(self, writer: W) -> WriterTriGSerializer<W>
pub fn for_writer<W: Write>(self, writer: W) -> WriterTriGSerializer<W>
Writes a TriG file to a Write
implementation.
use oxrdf::{NamedNodeRef, QuadRef};
use oxrdf::vocab::rdf;
use oxttl::TriGSerializer;
let mut serializer = TriGSerializer::new()
.with_prefix("schema", "http://schema.org/")?
.for_writer(Vec::new());
serializer.serialize_quad(QuadRef::new(
NamedNodeRef::new("http://example.com#me")?,
rdf::TYPE,
NamedNodeRef::new("http://schema.org/Person")?,
NamedNodeRef::new("http://example.com")?,
))?;
assert_eq!(
b"@prefix schema: <http://schema.org/> .\n<http://example.com> {\n\t<http://example.com#me> a schema:Person .\n}\n",
serializer.finish()?.as_slice()
);
Sourcepub fn low_level(self) -> LowLevelTriGSerializer
pub fn low_level(self) -> LowLevelTriGSerializer
Builds a low-level TriG writer.
use oxrdf::{NamedNodeRef, QuadRef};
use oxrdf::vocab::rdf;
use oxttl::TriGSerializer;
let mut buf = Vec::new();
let mut serializer = TriGSerializer::new()
.with_prefix("schema", "http://schema.org/")?
.low_level();
serializer.serialize_quad(
QuadRef::new(
NamedNodeRef::new("http://example.com#me")?,
rdf::TYPE,
NamedNodeRef::new("http://schema.org/Person")?,
NamedNodeRef::new("http://example.com")?,
),
&mut buf,
)?;
serializer.finish(&mut buf)?;
assert_eq!(
b"@prefix schema: <http://schema.org/> .\n<http://example.com> {\n\t<http://example.com#me> a schema:Person .\n}\n",
buf.as_slice()
);
Trait Implementations§
Source§impl Clone for TriGSerializer
impl Clone for TriGSerializer
Source§fn clone(&self) -> TriGSerializer
fn clone(&self) -> TriGSerializer
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Default for TriGSerializer
impl Default for TriGSerializer
Source§fn default() -> TriGSerializer
fn default() -> TriGSerializer
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for TriGSerializer
impl RefUnwindSafe for TriGSerializer
impl Send for TriGSerializer
impl Sync for TriGSerializer
impl Unpin for TriGSerializer
impl UnwindSafe for TriGSerializer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more