Struct LiteralRef
pub struct LiteralRef<'a>(LiteralRefContent<'a>);
rdf
only.Expand description
A borrowed RDF literal.
The default string formatter is returning an N-Triples, Turtle, and SPARQL compatible representation:
use oxrdf::vocab::xsd;
use oxrdf::LiteralRef;
assert_eq!(
"\"foo\\nbar\"",
LiteralRef::new_simple_literal("foo\nbar").to_string()
);
assert_eq!(
r#""1999-01-01"^^<http://www.w3.org/2001/XMLSchema#date>"#,
LiteralRef::new_typed_literal("1999-01-01", xsd::DATE).to_string()
);
Tuple Fieldsยง
ยง0: LiteralRefContent<'a>
Implementationsยง
ยงimpl<'a> LiteralRef<'a>
impl<'a> LiteralRef<'a>
pub const fn new_simple_literal(value: &'a str) -> LiteralRef<'a>
pub const fn new_simple_literal(value: &'a str) -> LiteralRef<'a>
Builds an RDF simple literal.
pub fn new_typed_literal(
value: &'a str,
datatype: impl Into<NamedNodeRef<'a>>,
) -> LiteralRef<'a>
pub fn new_typed_literal( value: &'a str, datatype: impl Into<NamedNodeRef<'a>>, ) -> LiteralRef<'a>
pub const fn new_language_tagged_literal_unchecked(
value: &'a str,
language: &'a str,
) -> LiteralRef<'a>
pub const fn new_language_tagged_literal_unchecked( value: &'a str, language: &'a str, ) -> LiteralRef<'a>
Builds an RDF language-tagged string.
It is the responsibility of the caller to check that language
is valid BCP47 language tag,
and is lowercase.
Literal::new_language_tagged_literal()
is a safe version of this constructor and should be used for untrusted data.
pub const fn value(self) -> &'a str
pub const fn value(self) -> &'a str
The literal lexical form
pub const fn language(self) -> Option<&'a str>
pub const fn language(self) -> Option<&'a str>
The literal language tag if it is a language-tagged string.
Language tags are defined by the BCP47. They are normalized to lowercase by this implementation.
pub const fn datatype(self) -> NamedNodeRef<'a>
pub const fn datatype(self) -> NamedNodeRef<'a>
The literal datatype.
The datatype of language-tagged string is always rdf:langString. The datatype of simple literals is xsd:string.
pub const fn is_plain(self) -> bool
pub const fn is_plain(self) -> bool
Checks if this literal could be seen as an RDF 1.0 plain literal.
It returns true if the literal is a language-tagged string or has the datatype xsd:string.
pub fn into_owned(self) -> Literal
Trait Implementationsยง
ยงimpl<'a> Clone for LiteralRef<'a>
impl<'a> Clone for LiteralRef<'a>
ยงfn clone(&self) -> LiteralRef<'a>
fn clone(&self) -> LiteralRef<'a>
1.0.0 ยท Sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreยงimpl<'a> Debug for LiteralRef<'a>
impl<'a> Debug for LiteralRef<'a>
ยงimpl Display for LiteralRef<'_>
impl Display for LiteralRef<'_>
ยงimpl<'a> From<&'a Literal> for LiteralRef<'a>
impl<'a> From<&'a Literal> for LiteralRef<'a>
ยงfn from(node: &'a Literal) -> LiteralRef<'a>
fn from(node: &'a Literal) -> LiteralRef<'a>
ยงimpl<'a> From<&'a str> for LiteralRef<'a>
impl<'a> From<&'a str> for LiteralRef<'a>
ยงfn from(value: &'a str) -> LiteralRef<'a>
fn from(value: &'a str) -> LiteralRef<'a>
ยงimpl From<LiteralRef<'_>> for Term
impl From<LiteralRef<'_>> for Term
ยงfn from(literal: LiteralRef<'_>) -> Term
fn from(literal: LiteralRef<'_>) -> Term
ยงimpl<'a> From<LiteralRef<'a>> for Literal
impl<'a> From<LiteralRef<'a>> for Literal
ยงfn from(node: LiteralRef<'a>) -> Literal
fn from(node: LiteralRef<'a>) -> Literal
ยงimpl<'a> From<LiteralRef<'a>> for TermRef<'a>
impl<'a> From<LiteralRef<'a>> for TermRef<'a>
ยงfn from(literal: LiteralRef<'a>) -> TermRef<'a>
fn from(literal: LiteralRef<'a>) -> TermRef<'a>
ยงimpl<'a> Hash for LiteralRef<'a>
impl<'a> Hash for LiteralRef<'a>
ยงimpl PartialEq<Literal> for LiteralRef<'_>
impl PartialEq<Literal> for LiteralRef<'_>
ยงimpl PartialEq<LiteralRef<'_>> for Literal
impl PartialEq<LiteralRef<'_>> for Literal
ยงimpl<'a> PartialEq for LiteralRef<'a>
impl<'a> PartialEq for LiteralRef<'a>
impl<'a> Copy for LiteralRef<'a>
impl<'a> Eq for LiteralRef<'a>
impl<'a> StructuralPartialEq for LiteralRef<'a>
Auto Trait Implementationsยง
impl<'a> Freeze for LiteralRef<'a>
impl<'a> RefUnwindSafe for LiteralRef<'a>
impl<'a> Send for LiteralRef<'a>
impl<'a> Sync for LiteralRef<'a>
impl<'a> Unpin for LiteralRef<'a>
impl<'a> UnwindSafe for LiteralRef<'a>
Blanket Implementationsยง
ยงimpl<T> ArchivePointee for T
impl<T> ArchivePointee for T
ยงtype ArchivedMetadata = ()
type ArchivedMetadata = ()
ยงfn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
ยงimpl<T> CallHasher for T
impl<T> CallHasher for T
Sourceยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
ยงimpl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
ยงfn deserialize(
&self,
deserializer: &mut D,
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut D, ) -> Result<With<T, W>, <D as Fallible>::Error>
ยงimpl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
ยงfn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.ยงfn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.ยงfn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
โs vtable from &Trait
โs.ยงfn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
โs vtable from &mut Trait
โs.ยงimpl<T> DowncastSend for T
impl<T> DowncastSend for T
ยงimpl<T> DowncastSync for T
impl<T> DowncastSync for T
ยงimpl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
ยงfn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
ยงimpl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
ยงfn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.ยงimpl<T> Instrument for T
impl<T> Instrument for T
ยงfn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
ยงfn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more