also return evaluation errors

This commit is contained in:
Joeri Exelmans 2025-11-05 09:45:57 +01:00
parent 3cfe92cea9
commit 18c8b36151
2 changed files with 5 additions and 1 deletions

Binary file not shown.

View file

@ -74,7 +74,11 @@ pub fn eval_boolean(s: &str, js_trace: JsValue) -> JsValue {
let parse_result = argus::parse_str(s); let parse_result = argus::parse_str(s);
let expr = match parse_result { let expr = match parse_result {
Ok(expr) => expr, Ok(expr) => expr,
Err(e) => return JsValue::from_str("failed to parse expression"), Err(e) => {
let messages: Vec<String> = e.iter().map(|e| e.to_string()).collect();
let joined = messages.join(",");
return JsValue::from_str(format!("failed to parse expression: {}", joined).as_str());
},
}; };
// evaluate property on trace // evaluate property on trace
let eval_result = match expr { let eval_result = match expr {