pub enum AST<P> {
Show 15 variants
Equals {
field: P,
value: Value,
},
NotEquals {
field: P,
value: Value,
},
In {
field: P,
value: Value,
},
Contains {
field: P,
value: Value,
},
GreaterThan {
field: P,
value: Value,
},
LessThan {
field: P,
value: Value,
},
GreaterThanOrEqual {
field: P,
value: Value,
},
LessThanOrEqual {
field: P,
value: Value,
},
StartsWith {
field: P,
value: Value,
},
EndsWith {
field: P,
value: Value,
},
RegexMatch {
field: P,
value: Value,
},
InvalidField {
field_name: String,
},
And(Box<AST<P>>, Box<AST<P>>),
Or(Box<AST<P>>, Box<AST<P>>),
Not(Box<AST<P>>),
}
Expand description
An enumeration of Abstract Syntax Tree (AST) nodes representing various query operations. P: The generic type parameter representing the field type in the AST.
Variants§
Equals
Represents an equality operation: field == value.
NotEquals
Represents an inequality operation: field != value.
In
Represents a containment operation: field in value.
Contains
Represents a containment operation: field contains value.
GreaterThan
Represents a greater-than operation: field > value.
LessThan
Represents a less-than operation: field < value.
GreaterThanOrEqual
Represents a greater-than-or-equal-to operation: field >= value.
LessThanOrEqual
Represents a less-than-or-equal-to operation: field <= value.
StartsWith
Represents a starts-with operation: field starts with value.
EndsWith
Represents an ends-with operation: field ends with value.
RegexMatch
Represents a regex-match operation: field matches regex pattern.
InvalidField
And(Box<AST<P>>, Box<AST<P>>)
Represents a logical AND operation between two AST nodes.
Or(Box<AST<P>>, Box<AST<P>>)
Represents a logical OR operation between two AST nodes.