pub enum Expression {
Show 32 variants
Term(Term),
Variable(Variable),
And(Box<Expression>, Box<Expression>),
Or(Box<Expression>, Box<Expression>),
Not(Box<Expression>),
Equal(Box<Expression>, Box<Expression>),
NotEqual(Box<Expression>, Box<Expression>),
Less(Box<Expression>, Box<Expression>),
LessOrEqual(Box<Expression>, Box<Expression>),
Greater(Box<Expression>, Box<Expression>),
GreaterOrEqual(Box<Expression>, Box<Expression>),
Add(Box<Expression>, Box<Expression>),
Subtract(Box<Expression>, Box<Expression>),
Multiply(Box<Expression>, Box<Expression>),
Divide(Box<Expression>, Box<Expression>),
UnaryPlus(Box<Expression>),
UnaryMinus(Box<Expression>),
In(Box<Expression>, Vec<Expression>),
NotIn(Box<Expression>, Vec<Expression>),
Exists(Box<GraphPattern>),
NotExists(Box<GraphPattern>),
FunctionCall(Function, Vec<Expression>),
Bound(Variable),
If(Box<Expression>, Box<Expression>, Box<Expression>),
Coalesce(Vec<Expression>),
Literal(Literal),
IsIri(Box<Expression>),
IsBlank(Box<Expression>),
IsLiteral(Box<Expression>),
IsNumeric(Box<Expression>),
Str(Box<Expression>),
Regex(Box<Expression>, Box<Expression>, Option<Box<Expression>>),
}
Expand description
A SPARQL expression
Variants§
Term(Term)
A constant term
Variable(Variable)
A variable
And(Box<Expression>, Box<Expression>)
Logical AND
Or(Box<Expression>, Box<Expression>)
Logical OR
Not(Box<Expression>)
Logical NOT
Equal(Box<Expression>, Box<Expression>)
Equality: =
NotEqual(Box<Expression>, Box<Expression>)
Inequality: !=
Less(Box<Expression>, Box<Expression>)
Less than: <
LessOrEqual(Box<Expression>, Box<Expression>)
Less than or equal: <=
Greater(Box<Expression>, Box<Expression>)
Greater than: >
GreaterOrEqual(Box<Expression>, Box<Expression>)
Greater than or equal: >=
Add(Box<Expression>, Box<Expression>)
Addition: +
Subtract(Box<Expression>, Box<Expression>)
Subtraction: -
Multiply(Box<Expression>, Box<Expression>)
Multiplication: *
Divide(Box<Expression>, Box<Expression>)
Division: /
UnaryPlus(Box<Expression>)
Unary plus: +expr
UnaryMinus(Box<Expression>)
Unary minus: -expr
In(Box<Expression>, Vec<Expression>)
IN expression
NotIn(Box<Expression>, Vec<Expression>)
NOT IN expression
Exists(Box<GraphPattern>)
EXISTS pattern
NotExists(Box<GraphPattern>)
NOT EXISTS pattern
FunctionCall(Function, Vec<Expression>)
Function call
Bound(Variable)
Bound variable test
If(Box<Expression>, Box<Expression>, Box<Expression>)
IF expression
Coalesce(Vec<Expression>)
COALESCE expression
Literal(Literal)
Literal value
IsIri(Box<Expression>)
Test if term is IRI
IsBlank(Box<Expression>)
Test if term is blank node
IsLiteral(Box<Expression>)
Test if term is literal
IsNumeric(Box<Expression>)
Test if term is numeric
Str(Box<Expression>)
String value of term
Regex(Box<Expression>, Box<Expression>, Option<Box<Expression>>)
Regular expression matching
Trait Implementations§
Source§impl Clone for Expression
impl Clone for Expression
Source§fn clone(&self) -> Expression
fn clone(&self) -> Expression
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 Expression
impl Debug for Expression
Source§impl<'de> Deserialize<'de> for Expression
impl<'de> Deserialize<'de> for Expression
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 PartialEq for Expression
impl PartialEq for Expression
Source§impl Serialize for Expression
impl Serialize for Expression
impl StructuralPartialEq for Expression
Auto Trait Implementations§
impl Freeze for Expression
impl RefUnwindSafe for Expression
impl Send for Expression
impl Sync for Expression
impl Unpin for Expression
impl UnwindSafe for Expression
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 more