pub enum ProjectionExpression {
Show 28 variants
Variable {
variable: String,
},
Property {
variable: String,
property: String,
},
Id {
variable: String,
},
RelationshipType {
variable: String,
},
Literal(Value),
Coalesce(Vec<ProjectionExpression>),
VectorDistance {
metric: VectorDistance,
left: Box<ProjectionExpression>,
right: Box<ProjectionExpression>,
},
JsonValue {
expression: Box<ProjectionExpression>,
path: String,
},
Left {
expression: Box<ProjectionExpression>,
length: usize,
},
Lower(Box<ProjectionExpression>),
DatePart {
part: DatePart,
variable: String,
property: String,
},
DefaultIfNullOrEq {
variable: String,
property: String,
empty: Value,
default: Value,
},
DefaultIfNull {
variable: String,
property: String,
default: Value,
},
CasePropertyNotNullOrEq {
variable: String,
property: String,
empty: Value,
non_empty: Value,
null_or_empty: Value,
},
CasePropertyEqualsRank {
variable: String,
property: String,
branches: Vec<(Value, Value)>,
default: Value,
},
CaseLowerPropertyDefault {
variable: String,
property: String,
default: Value,
},
CaseCoalesceDifferenceFloorZero {
variable: String,
terms: Vec<CoalesceDifferenceProjectionTerm>,
},
Case {
operand: Option<Box<ProjectionExpression>>,
branches: Vec<(ProjectionExpression, ProjectionExpression)>,
otherwise: Option<Box<ProjectionExpression>>,
},
Binary {
left: Box<ProjectionExpression>,
op: ScalarBinaryOp,
right: Box<ProjectionExpression>,
},
Not(Box<ProjectionExpression>),
IsNull {
expression: Box<ProjectionExpression>,
negated: bool,
},
CaseEntitySearchRank(Box<CaseEntitySearchRankProjection>),
CaseColumnSearchRank(Box<CaseColumnSearchRankProjection>),
ColumnDefaultIfNullOrEq {
column: String,
property: String,
empty: Value,
default: Value,
},
ColumnValueDefaultIfNull {
column: String,
default: Value,
},
ColumnValueCasePropertyNotNullOrEq {
column: String,
empty: Value,
non_empty: Value,
null_or_empty: Value,
},
Column(String),
ColumnProperty {
column: String,
property: String,
},
}Variants§
Variable
Property
Id
RelationshipType
Literal(Value)
Coalesce(Vec<ProjectionExpression>)
VectorDistance
JsonValue
Left
Lower(Box<ProjectionExpression>)
DatePart
DefaultIfNullOrEq
DefaultIfNull
CasePropertyNotNullOrEq
CasePropertyEqualsRank
CaseLowerPropertyDefault
CaseCoalesceDifferenceFloorZero
Case
Fields
§
operand: Option<Box<ProjectionExpression>>§
branches: Vec<(ProjectionExpression, ProjectionExpression)>§
otherwise: Option<Box<ProjectionExpression>>Binary
Not(Box<ProjectionExpression>)
IsNull
CaseEntitySearchRank(Box<CaseEntitySearchRankProjection>)
CaseColumnSearchRank(Box<CaseColumnSearchRankProjection>)
ColumnDefaultIfNullOrEq
ColumnValueDefaultIfNull
ColumnValueCasePropertyNotNullOrEq
Column(String)
ColumnProperty
Implementations§
Source§impl ProjectionExpression
impl ProjectionExpression
Sourcepub fn all_children(
&self,
visit: impl FnMut(&ProjectionExpression) -> bool,
) -> bool
pub fn all_children( &self, visit: impl FnMut(&ProjectionExpression) -> bool, ) -> bool
Visits immediate scalar children in evaluation order, stopping on false.
Trait Implementations§
Source§impl Clone for ProjectionExpression
impl Clone for ProjectionExpression
Source§impl Debug for ProjectionExpression
impl Debug for ProjectionExpression
impl Eq for ProjectionExpression
Source§impl PartialEq for ProjectionExpression
impl PartialEq for ProjectionExpression
impl StructuralPartialEq for ProjectionExpression
Auto Trait Implementations§
impl Freeze for ProjectionExpression
impl RefUnwindSafe for ProjectionExpression
impl Send for ProjectionExpression
impl Sync for ProjectionExpression
impl Unpin for ProjectionExpression
impl UnsafeUnpin for ProjectionExpression
impl UnwindSafe for ProjectionExpression
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