From 52bfba153b24fa9e8298d3cd31203e4e11162530 Mon Sep 17 00:00:00 2001 From: itchyny Date: Thu, 29 Feb 2024 08:05:42 +0900 Subject: [PATCH] Implement abs/0 filter --- prelude.jq | 1 + tests/from_manual/functions.rs | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/prelude.jq b/prelude.jq index 78bf095..a442f68 100644 --- a/prelude.jq +++ b/prelude.jq @@ -2,6 +2,7 @@ def not: if . then false else true end; def select(f): if f then . else empty end; def map(f): [.[] | f]; def map_values(f): .[] |= f; +def abs: if . < 0 then - . else . end; def isfinite: isinfinite | not; def nulls: select(type == "null"); diff --git a/tests/from_manual/functions.rs b/tests/from_manual/functions.rs index 37a2f19..d1e2dfb 100644 --- a/tests/from_manual/functions.rs +++ b/tests/from_manual/functions.rs @@ -1,5 +1,18 @@ use crate::test; +test!( + abs1, + r#" + map(abs) + "#, + r#" + [-10, -1.1, -1e-1] + "#, + r#" + [10,1.1,1e-1] + "# +); + test!( length1, r#"