pub enum PropertyPath {
Iri(String),
Sequence(Box<PropertyPath>, Box<PropertyPath>),
Alternative(Box<PropertyPath>, Box<PropertyPath>),
ZeroOrMore(Box<PropertyPath>),
OneOrMore(Box<PropertyPath>),
ZeroOrOne(Box<PropertyPath>),
Inverse(Box<PropertyPath>),
}Expand description
A SPARQL 1.1 property path expression.
Variants§
Iri(String)
A simple IRI predicate: foaf:knows
Sequence(Box<PropertyPath>, Box<PropertyPath>)
Sequence path: a / b (a then b)
Alternative(Box<PropertyPath>, Box<PropertyPath>)
Alternative path: a | b (a or b)
ZeroOrMore(Box<PropertyPath>)
Zero or more: a*
OneOrMore(Box<PropertyPath>)
One or more: a+
ZeroOrOne(Box<PropertyPath>)
Zero or one: a?
Inverse(Box<PropertyPath>)
Inverse path: ^a (reverse direction)
Implementations§
Source§impl PropertyPath
impl PropertyPath
Sourcepub fn seq(a: PropertyPath, b: PropertyPath) -> Self
pub fn seq(a: PropertyPath, b: PropertyPath) -> Self
Create a sequence path: a / b.
Sourcepub fn alt(a: PropertyPath, b: PropertyPath) -> Self
pub fn alt(a: PropertyPath, b: PropertyPath) -> Self
Create an alternative path: a | b.
Sourcepub fn zero_or_more(p: PropertyPath) -> Self
pub fn zero_or_more(p: PropertyPath) -> Self
Create a zero-or-more closure path: a*.
Sourcepub fn one_or_more(p: PropertyPath) -> Self
pub fn one_or_more(p: PropertyPath) -> Self
Create a one-or-more closure path: a+.
Sourcepub fn zero_or_one(p: PropertyPath) -> Self
pub fn zero_or_one(p: PropertyPath) -> Self
Create a zero-or-one optional path: a?.
Sourcepub fn inverse(p: PropertyPath) -> Self
pub fn inverse(p: PropertyPath) -> Self
Create an inverse path: ^a.
Sourcepub fn contains_closure(&self) -> bool
pub fn contains_closure(&self) -> bool
Whether this path contains a closure operator (* or +).
Trait Implementations§
Source§impl Clone for PropertyPath
impl Clone for PropertyPath
Source§fn clone(&self) -> PropertyPath
fn clone(&self) -> PropertyPath
Returns a duplicate 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 Debug for PropertyPath
impl Debug for PropertyPath
Source§impl<'de> Deserialize<'de> for PropertyPath
impl<'de> Deserialize<'de> for PropertyPath
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for PropertyPath
impl Display for PropertyPath
Source§impl PartialEq for PropertyPath
impl PartialEq for PropertyPath
Source§impl Serialize for PropertyPath
impl Serialize for PropertyPath
impl StructuralPartialEq for PropertyPath
Auto Trait Implementations§
impl Freeze for PropertyPath
impl RefUnwindSafe for PropertyPath
impl Send for PropertyPath
impl Sync for PropertyPath
impl Unpin for PropertyPath
impl UnsafeUnpin for PropertyPath
impl UnwindSafe for PropertyPath
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.