pub struct FilterNodeBuilder;Expand description
Builder for constructing filter nodes programmatically.
This provides a clean API for creating filters without dealing with the internal structure directly.
Implementations§
Source§impl FilterNodeBuilder
impl FilterNodeBuilder
Sourcepub fn eq(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn eq(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates an equality comparison: key == val
Sourcepub fn neq(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn neq(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates an inequality comparison: key != val
Sourcepub fn in_set(key: impl Into<String>, vals: &[impl ToString]) -> FilterNode
pub fn in_set(key: impl Into<String>, vals: &[impl ToString]) -> FilterNode
Creates a set membership comparison: key in [vals…]
Sourcepub fn nin(key: impl Into<String>, vals: &[impl ToString]) -> FilterNode
pub fn nin(key: impl Into<String>, vals: &[impl ToString]) -> FilterNode
Creates a set non-membership comparison: key not in [vals…]
Sourcepub fn exists(key: impl Into<String>) -> FilterNode
pub fn exists(key: impl Into<String>) -> FilterNode
Creates an existence check: key exists
Sourcepub fn not_exists(key: impl Into<String>) -> FilterNode
pub fn not_exists(key: impl Into<String>) -> FilterNode
Creates a non-existence check: key does not exist
Sourcepub fn starts_with(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn starts_with(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates a starts-with comparison: key starts with val
Sourcepub fn ends_with(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn ends_with(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates an ends-with comparison: key ends with val
Sourcepub fn contains(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn contains(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates a contains comparison: key contains val
Sourcepub fn gt(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn gt(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates a greater-than comparison: key > val (numeric)
Sourcepub fn gte(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn gte(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates a greater-than-or-equal comparison: key >= val (numeric)
Sourcepub fn lt(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn lt(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates a less-than comparison: key < val (numeric)
Sourcepub fn lte(key: impl Into<String>, val: impl Into<String>) -> FilterNode
pub fn lte(key: impl Into<String>, val: impl Into<String>) -> FilterNode
Creates a less-than-or-equal comparison: key <= val (numeric)
Sourcepub fn and(nodes: Vec<FilterNode>) -> FilterNode
pub fn and(nodes: Vec<FilterNode>) -> FilterNode
Creates an AND logical operation: all children must match
Sourcepub fn or(nodes: Vec<FilterNode>) -> FilterNode
pub fn or(nodes: Vec<FilterNode>) -> FilterNode
Creates an OR logical operation: at least one child must match
Sourcepub fn not(node: FilterNode) -> FilterNode
pub fn not(node: FilterNode) -> FilterNode
Creates a NOT logical operation: negates the child