Spargebra: Makes GroundTermPattern::Triple properly gated with the rdf-star feature

It is only RDF-star specific
pull/490/head
Tpt 2 years ago committed by Thomas Tanon
parent 7175784356
commit cfe52db3a3
  1. 5
      lib/spargebra/src/term.rs

@ -577,6 +577,7 @@ pub enum GroundTermPattern {
NamedNode(NamedNode), NamedNode(NamedNode),
Literal(Literal), Literal(Literal),
Variable(Variable), Variable(Variable),
#[cfg(feature = "rdf-star")]
Triple(Box<GroundTriplePattern>), Triple(Box<GroundTriplePattern>),
} }
@ -587,6 +588,7 @@ impl GroundTermPattern {
Self::NamedNode(term) => write!(f, "{term}"), Self::NamedNode(term) => write!(f, "{term}"),
Self::Literal(term) => write!(f, "{term}"), Self::Literal(term) => write!(f, "{term}"),
Self::Variable(var) => write!(f, "{var}"), Self::Variable(var) => write!(f, "{var}"),
#[cfg(feature = "rdf-star")]
Self::Triple(triple) => triple.fmt_sse(f), Self::Triple(triple) => triple.fmt_sse(f),
} }
} }
@ -599,6 +601,7 @@ impl fmt::Display for GroundTermPattern {
Self::NamedNode(term) => term.fmt(f), Self::NamedNode(term) => term.fmt(f),
Self::Literal(term) => term.fmt(f), Self::Literal(term) => term.fmt(f),
Self::Variable(var) => var.fmt(f), Self::Variable(var) => var.fmt(f),
#[cfg(feature = "rdf-star")]
Self::Triple(triple) => write!(f, "<<{triple}>>"), Self::Triple(triple) => write!(f, "<<{triple}>>"),
} }
} }
@ -618,6 +621,7 @@ impl From<Literal> for GroundTermPattern {
} }
} }
#[cfg(feature = "rdf-star")]
impl From<GroundTriplePattern> for GroundTermPattern { impl From<GroundTriplePattern> for GroundTermPattern {
#[inline] #[inline]
fn from(triple: GroundTriplePattern) -> Self { fn from(triple: GroundTriplePattern) -> Self {
@ -818,6 +822,7 @@ pub struct GroundTriplePattern {
impl GroundTriplePattern { impl GroundTriplePattern {
/// Formats using the [SPARQL S-Expression syntax](https://jena.apache.org/documentation/notes/sse.html). /// Formats using the [SPARQL S-Expression syntax](https://jena.apache.org/documentation/notes/sse.html).
#[allow(dead_code)]
pub(crate) fn fmt_sse(&self, f: &mut impl Write) -> fmt::Result { pub(crate) fn fmt_sse(&self, f: &mut impl Write) -> fmt::Result {
write!(f, "(triple ")?; write!(f, "(triple ")?;
self.subject.fmt_sse(f)?; self.subject.fmt_sse(f)?;

Loading…
Cancel
Save