surrealdb_expr/expr/
data.rs1use crate::expr::{AssignOperator, Expr, Idiom};
2
3#[derive(Clone, Debug, Default, Eq, PartialEq, Hash)]
4#[allow(clippy::enum_variant_names)]
5pub enum Data {
6 #[default]
8 EmptyExpression,
9 SetExpression(Vec<Assignment>),
11 UnsetExpression(Vec<Idiom>),
13 PatchExpression(Expr),
15 MergeExpression(Expr),
17 ReplaceExpression(Expr),
19 ContentExpression(Expr),
21 SingleExpression(Expr),
23 ValuesExpression(Vec<Vec<(Idiom, Expr)>>),
25 UpdateExpression(Vec<Assignment>),
27}
28
29#[derive(Clone, Debug, Eq, PartialEq, Hash)]
30pub struct Assignment {
31 pub place: Idiom,
32 pub operator: AssignOperator,
33 pub value: Expr,
34}