Merge pull request #601 from slapresta/redefine-any-all
Define {any,all}/0,1 in terms of {any,all}/2
This commit is contained in:
commit
2775b90b20
1 file changed
+8
-10
@@ -978,22 +978,20 @@ static const char* const jq_builtins[] = {
|
|||||||
"def rindex($i): if type == \"array\" and ($i|type) == \"array\" then .[$i] elif type == \"array\" then .[[$i]] else .[$i] end | .[-1:][0];",
|
"def rindex($i): if type == \"array\" and ($i|type) == \"array\" then .[$i] elif type == \"array\" then .[[$i]] else .[$i] end | .[-1:][0];",
|
||||||
"def paths: path(recurse(if (type|. == \"array\" or . == \"object\") then .[] else empty end))|select(length > 0);",
|
"def paths: path(recurse(if (type|. == \"array\" or . == \"object\") then .[] else empty end))|select(length > 0);",
|
||||||
"def paths(node_filter): . as $dot|paths|select(. as $p|$dot|getpath($p)|node_filter);",
|
"def paths(node_filter): . as $dot|paths|select(. as $p|$dot|getpath($p)|node_filter);",
|
||||||
"def any: reduce .[] as $i (false; . or $i);",
|
|
||||||
"def all: reduce .[] as $i (true; . and $i);",
|
|
||||||
"def any(condition): reduce .[] as $i (false; . or ($i|condition));",
|
|
||||||
"def any(generator; condition):"
|
"def any(generator; condition):"
|
||||||
" [false,"
|
" [foreach generator as $i"
|
||||||
" foreach generator as $i"
|
|
||||||
" (false;"
|
" (false;"
|
||||||
" if . then break elif $i | condition then true else . end;"
|
" if . then break elif $i | condition then true else . end;"
|
||||||
" if . then . else empty end)] | any;",
|
" if . then . else empty end)] | length == 1;",
|
||||||
"def all(condition): reduce .[] as $i (true; . and ($i|condition));",
|
"def any(condition): any(.[]; condition);",
|
||||||
|
"def any: any(.);",
|
||||||
"def all(generator; condition): "
|
"def all(generator; condition): "
|
||||||
" [true,"
|
" [foreach generator as $i"
|
||||||
" foreach generator as $i"
|
|
||||||
" (true;"
|
" (true;"
|
||||||
" if .|not then break elif $i | condition then . else false end;"
|
" if .|not then break elif $i | condition then . else false end;"
|
||||||
" if .|not then . else empty end)]|all;",
|
" if .|not then . else empty end)] | length == 0;",
|
||||||
|
"def all(condition): all(.[]; condition);",
|
||||||
|
"def all: all(.);",
|
||||||
"def arrays: select(type == \"array\");",
|
"def arrays: select(type == \"array\");",
|
||||||
"def objects: select(type == \"object\");",
|
"def objects: select(type == \"object\");",
|
||||||
"def iterables: arrays, objects;",
|
"def iterables: arrays, objects;",
|
||||||
|
|||||||
Reference in new issue
Block a user