#[non_exhaustive]pub enum ExprKind {
Show 24 variants
Literal(Literal),
Variable(Name),
Parameter(Parameter),
Wildcard,
List(Vec<Expr>),
Map(Vec<MapEntry>),
MapProjection(MapProjection),
Unary {
operator: Node<UnaryOperator>,
operand: Box<Expr>,
},
Binary {
left: Box<Expr>,
operator: Node<BinaryOperator>,
right: Box<Expr>,
},
Is {
expression: Box<Expr>,
negated: bool,
predicate: IsPredicate,
},
Property {
expression: Box<Expr>,
key: Name,
},
DynamicProperty {
expression: Box<Expr>,
key: Box<Expr>,
},
Index {
expression: Box<Expr>,
index: Box<Expr>,
},
Slice {
expression: Box<Expr>,
lower: Option<Box<Expr>>,
upper: Option<Box<Expr>>,
},
Function(FunctionInvocation),
Case(CaseExpression),
ListComprehension(ListComprehension),
PatternComprehension(PatternComprehension),
Reduce(ReduceExpression),
QuantifiedPredicate(QuantifiedPredicate),
Subquery(SubqueryExpression),
Pattern(Pattern),
Parenthesized(Box<Expr>),
Error(ErrorNode),
}Expand description
Any expression in openCypher 2024.3.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Literal(Literal)
Variable(Name)
Parameter(Parameter)
Wildcard
List(Vec<Expr>)
Map(Vec<MapEntry>)
MapProjection(MapProjection)
Unary
Binary
Is
Property
DynamicProperty
Index
Slice
Function(FunctionInvocation)
Case(CaseExpression)
ListComprehension(ListComprehension)
PatternComprehension(PatternComprehension)
Reduce(ReduceExpression)
QuantifiedPredicate(QuantifiedPredicate)
Subquery(SubqueryExpression)
Pattern(Pattern)
Parenthesized(Box<Expr>)
Error(ErrorNode)
Trait Implementations§
impl Eq for ExprKind
impl StructuralPartialEq for ExprKind
Auto Trait Implementations§
impl Freeze for ExprKind
impl RefUnwindSafe for ExprKind
impl Send for ExprKind
impl Sync for ExprKind
impl Unpin for ExprKind
impl UnsafeUnpin for ExprKind
impl UnwindSafe for ExprKind
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