]> granicus.if.org Git - jq/commitdiff
Allow negated object values without parens. Fixes #247
authorStephen Dolan <mu@netsoc.tcd.ie>
Tue, 17 Dec 2013 22:28:26 +0000 (22:28 +0000)
committerStephen Dolan <mu@netsoc.tcd.ie>
Tue, 17 Dec 2013 22:28:31 +0000 (22:28 +0000)
parser.y
tests/all.test

index 4c0b6a2a1dc459834e98ce12dd48dfddce48371c..bc7bba947102109340e5aad85fa6eb030f019988 100644 (file)
--- a/parser.y
+++ b/parser.y
@@ -458,7 +458,9 @@ ExpD:
 ExpD '|' ExpD { 
   $$ = block_join($1, $3);
 } |
-
+'-' ExpD {
+  $$ = BLOCK($2, gen_call("_negate", gen_noop()));
+} |
 Term {
   $$ = $1;
 }
index 259cdf2e67c2d41f91d9aad89a3895ca2885b1e0..f50b7eb11a5543d09c575d94799eb3534cdcc873 100644 (file)
@@ -36,6 +36,10 @@ null
 null
 []
 
+{x: -1}
+null
+{"x": -1}
+
 # The input line starts with a 0xFEFF (byte order mark) codepoint
 # No, there is no reason to have a byte order mark in UTF8 text.
 # But apparently people do, so jq shouldn't break on it.