Function aerospike::expressions::cond
source · pub const fn cond(exps: Vec<FilterExpression>) -> FilterExpression
Expand description
Conditionally select an expression from a variable number of expression pairs followed by default expression action. Requires server version 5.6.0+.
// Args Format: bool exp1, action exp1, bool exp2, action exp2, ..., action-default
// Apply operator based on type.
use aerospike::expressions::{cond, int_bin, eq, int_val, num_add, num_sub, num_mul};
cond(
vec![
eq(int_bin("type".to_string()), int_val(0)), num_add(vec![int_bin("val1".to_string()), int_bin("val2".to_string())]),
eq(int_bin("type".to_string()), int_val(1)), num_sub(vec![int_bin("val1".to_string()), int_bin("val2".to_string())]),
eq(int_bin("type".to_string()), int_val(2)), num_mul(vec![int_bin("val1".to_string()), int_bin("val2".to_string())]),
int_val(-1)
]
);