From ccb4753e24eefb5b8cf2acd6d25f0e2afce1c022 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Mon, 30 May 2022 10:31:31 +0200 Subject: Find optionally takes function instead of value --- src/eval/methods.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/eval/methods.rs') diff --git a/src/eval/methods.rs b/src/eval/methods.rs index e8296d23..d425e007 100644 --- a/src/eval/methods.rs +++ b/src/eval/methods.rs @@ -38,7 +38,9 @@ pub fn call( "map" => Value::Array(array.map(vm, args.expect("function")?)?), "filter" => Value::Array(array.filter(vm, args.expect("function")?)?), "flatten" => Value::Array(array.flatten()), - "find" => array.find(args.expect("value")?).map_or(Value::None, Value::Int), + "find" => array + .find(vm, args.expect("value or function")?)? + .map_or(Value::None, Value::Int), "join" => { let sep = args.eat()?; let last = args.named("last")?; -- cgit v1.2.3