@port-labs/jq-node-bindings 1.0.4 → 1.1.0-dev

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/.claude/settings.local.json +12 -0
  2. package/configure +6 -5
  3. package/deps/jq/.claude/settings.local.json +7 -0
  4. package/deps/jq/.gitattributes +1 -3
  5. package/deps/jq/AUTHORS +55 -1
  6. package/deps/jq/COPYING +40 -0
  7. package/deps/jq/Makefile.am +40 -36
  8. package/deps/jq/NEWS.md +277 -2
  9. package/deps/jq/README.md +23 -5
  10. package/deps/jq/compile-ios.sh +1 -1
  11. package/deps/jq/config/m4/check-math-func.m4 +2 -2
  12. package/deps/jq/config/m4/find-func-no-libs2.m4 +3 -3
  13. package/deps/jq/configure.ac +10 -18
  14. package/deps/jq/docs/Pipfile.lock +368 -313
  15. package/deps/jq/docs/README.md +3 -4
  16. package/deps/jq/docs/build_manpage.py +1 -1
  17. package/deps/jq/docs/build_mantests.py +1 -1
  18. package/deps/jq/docs/build_website.py +1 -8
  19. package/deps/jq/docs/content/download/default.yml +49 -9
  20. package/deps/jq/docs/content/index.yml +9 -0
  21. package/deps/jq/docs/content/manual/{manual.yml → dev/manual.yml} +218 -61
  22. package/deps/jq/docs/content/manual/v1.3/manual.yml +0 -5
  23. package/deps/jq/docs/content/manual/v1.4/manual.yml +0 -5
  24. package/deps/jq/docs/content/manual/v1.5/manual.yml +3 -8
  25. package/deps/jq/docs/content/manual/v1.6/manual.yml +3 -8
  26. package/deps/jq/docs/content/manual/v1.7/manual.yml +499 -500
  27. package/deps/jq/docs/content/manual/v1.8/manual.yml +3858 -0
  28. package/deps/jq/docs/content/tutorial/default.yml +3 -3
  29. package/deps/jq/docs/manual_schema.yml +0 -3
  30. package/deps/jq/docs/public/CNAME +1 -0
  31. package/deps/jq/docs/templates/index.html.j2 +10 -10
  32. package/deps/jq/docs/templates/manual.html.j2 +14 -3
  33. package/deps/jq/docs/templates/shared/_head.html.j2 +8 -3
  34. package/deps/jq/docs/templates/shared/_navbar.html.j2 +4 -4
  35. package/deps/jq/jq.1.prebuilt +219 -44
  36. package/deps/jq/jq.spec +2 -2
  37. package/deps/jq/libjq.pc.in +1 -1
  38. package/deps/jq/scripts/version +1 -1
  39. package/deps/jq/sig/v1.7.1/jq-1.7.1.tar.gz.asc +16 -0
  40. package/deps/jq/sig/v1.7.1/jq-1.7.1.zip.asc +16 -0
  41. package/deps/jq/sig/v1.7.1/jq-linux-amd64.asc +16 -0
  42. package/deps/jq/sig/v1.7.1/jq-linux-arm64.asc +16 -0
  43. package/deps/jq/sig/v1.7.1/jq-linux-armel.asc +16 -0
  44. package/deps/jq/sig/v1.7.1/jq-linux-armhf.asc +16 -0
  45. package/deps/jq/sig/v1.7.1/jq-linux-i386.asc +16 -0
  46. package/deps/jq/sig/v1.7.1/jq-linux-mips.asc +16 -0
  47. package/deps/jq/sig/v1.7.1/jq-linux-mips64.asc +16 -0
  48. package/deps/jq/sig/v1.7.1/jq-linux-mips64el.asc +16 -0
  49. package/deps/jq/sig/v1.7.1/jq-linux-mips64r6.asc +16 -0
  50. package/deps/jq/sig/v1.7.1/jq-linux-mips64r6el.asc +16 -0
  51. package/deps/jq/sig/v1.7.1/jq-linux-mipsel.asc +16 -0
  52. package/deps/jq/sig/v1.7.1/jq-linux-mipsr6.asc +16 -0
  53. package/deps/jq/sig/v1.7.1/jq-linux-mipsr6el.asc +16 -0
  54. package/deps/jq/sig/v1.7.1/jq-linux-powerpc.asc +16 -0
  55. package/deps/jq/sig/v1.7.1/jq-linux-ppc64el.asc +16 -0
  56. package/deps/jq/sig/v1.7.1/jq-linux-riscv64.asc +16 -0
  57. package/deps/jq/sig/v1.7.1/jq-linux-s390x.asc +16 -0
  58. package/deps/jq/sig/v1.7.1/jq-linux64.asc +16 -0
  59. package/deps/jq/sig/v1.7.1/jq-macos-amd64.asc +16 -0
  60. package/deps/jq/sig/v1.7.1/jq-macos-arm64.asc +16 -0
  61. package/deps/jq/sig/v1.7.1/jq-osx-amd64.asc +16 -0
  62. package/deps/jq/sig/v1.7.1/jq-win64.exe.asc +16 -0
  63. package/deps/jq/sig/v1.7.1/jq-windows-amd64.exe.asc +16 -0
  64. package/deps/jq/sig/v1.7.1/jq-windows-i386.exe.asc +16 -0
  65. package/deps/jq/sig/v1.7.1/sha256sum.txt +26 -0
  66. package/deps/jq/sig/v1.8.0/jq-1.8.0.tar.gz.asc +16 -0
  67. package/deps/jq/sig/v1.8.0/jq-1.8.0.zip.asc +16 -0
  68. package/deps/jq/sig/v1.8.0/jq-linux-amd64.asc +16 -0
  69. package/deps/jq/sig/v1.8.0/jq-linux-arm64.asc +16 -0
  70. package/deps/jq/sig/v1.8.0/jq-linux-armel.asc +16 -0
  71. package/deps/jq/sig/v1.8.0/jq-linux-armhf.asc +16 -0
  72. package/deps/jq/sig/v1.8.0/jq-linux-i386.asc +16 -0
  73. package/deps/jq/sig/v1.8.0/jq-linux-mips.asc +16 -0
  74. package/deps/jq/sig/v1.8.0/jq-linux-mips64.asc +16 -0
  75. package/deps/jq/sig/v1.8.0/jq-linux-mips64el.asc +16 -0
  76. package/deps/jq/sig/v1.8.0/jq-linux-mips64r6.asc +16 -0
  77. package/deps/jq/sig/v1.8.0/jq-linux-mips64r6el.asc +16 -0
  78. package/deps/jq/sig/v1.8.0/jq-linux-mipsel.asc +16 -0
  79. package/deps/jq/sig/v1.8.0/jq-linux-mipsr6.asc +16 -0
  80. package/deps/jq/sig/v1.8.0/jq-linux-mipsr6el.asc +16 -0
  81. package/deps/jq/sig/v1.8.0/jq-linux-powerpc.asc +16 -0
  82. package/deps/jq/sig/v1.8.0/jq-linux-ppc64el.asc +16 -0
  83. package/deps/jq/sig/v1.8.0/jq-linux-riscv64.asc +16 -0
  84. package/deps/jq/sig/v1.8.0/jq-linux-s390x.asc +16 -0
  85. package/deps/jq/sig/v1.8.0/jq-linux64.asc +16 -0
  86. package/deps/jq/sig/v1.8.0/jq-macos-amd64.asc +16 -0
  87. package/deps/jq/sig/v1.8.0/jq-macos-arm64.asc +16 -0
  88. package/deps/jq/sig/v1.8.0/jq-osx-amd64.asc +16 -0
  89. package/deps/jq/sig/v1.8.0/jq-win64.exe.asc +16 -0
  90. package/deps/jq/sig/v1.8.0/jq-windows-amd64.exe.asc +16 -0
  91. package/deps/jq/sig/v1.8.0/jq-windows-i386.exe.asc +16 -0
  92. package/deps/jq/sig/v1.8.0/sha256sum.txt +26 -0
  93. package/deps/jq/src/builtin.c +446 -271
  94. package/deps/jq/src/builtin.jq +25 -60
  95. package/deps/jq/src/bytecode.h +8 -3
  96. package/deps/jq/src/compile.c +22 -43
  97. package/deps/jq/src/compile.h +1 -1
  98. package/deps/jq/src/execute.c +20 -25
  99. package/deps/jq/src/jq_test.c +113 -44
  100. package/deps/jq/src/jv.c +134 -42
  101. package/deps/jq/src/jv.h +10 -3
  102. package/deps/jq/src/jv_alloc.c +8 -5
  103. package/deps/jq/src/jv_alloc.h +0 -1
  104. package/deps/jq/src/jv_aux.c +41 -8
  105. package/deps/jq/src/jv_dtoa.c +4 -12
  106. package/deps/jq/src/jv_dtoa_tsd.c +5 -4
  107. package/deps/jq/src/jv_dtoa_tsd.h +1 -1
  108. package/deps/jq/src/jv_parse.c +5 -3
  109. package/deps/jq/src/jv_print.c +87 -65
  110. package/deps/jq/src/jv_unicode.c +18 -0
  111. package/deps/jq/src/jv_unicode.h +2 -0
  112. package/deps/jq/src/lexer.c +303 -278
  113. package/deps/jq/src/lexer.h +5 -4
  114. package/deps/jq/src/lexer.l +8 -2
  115. package/deps/jq/src/libm.h +15 -5
  116. package/deps/jq/src/linker.c +6 -4
  117. package/deps/jq/src/locfile.c +12 -12
  118. package/deps/jq/src/main.c +204 -270
  119. package/deps/jq/src/parser.c +1105 -1273
  120. package/deps/jq/src/parser.y +149 -181
  121. package/deps/jq/src/util.c +46 -48
  122. package/deps/jq/src/util.h +1 -1
  123. package/deps/jq/tests/base64.test +12 -0
  124. package/deps/jq/tests/jq.test +429 -37
  125. package/deps/jq/tests/jq_fuzz_load_file.c +1 -0
  126. package/deps/jq/tests/man.test +46 -13
  127. package/deps/jq/tests/manonig.test +13 -0
  128. package/deps/jq/tests/onig.test +40 -2
  129. package/deps/jq/tests/optional.test +4 -12
  130. package/deps/jq/tests/setup +5 -1
  131. package/deps/jq/tests/shtest +358 -130
  132. package/deps/jq/tests/uri.test +38 -0
  133. package/deps/jq/tests/uritest +5 -0
  134. package/deps/jq/{src → vendor}/decNumber/decBasic.c +1 -1
  135. package/deps/jq/{src → vendor}/decNumber/decCommon.c +1 -1
  136. package/deps/jq/{src → vendor}/decNumber/decNumber.c +4 -4
  137. package/deps/jq/{modules → vendor}/oniguruma/CMakeLists.txt +5 -3
  138. package/deps/jq/{modules → vendor}/oniguruma/HISTORY +45 -7
  139. package/deps/jq/{modules → vendor}/oniguruma/Makefile.am +1 -1
  140. package/deps/jq/{modules → vendor}/oniguruma/README.md +10 -23
  141. package/deps/jq/{modules → vendor}/oniguruma/compile +29 -13
  142. package/deps/jq/{modules → vendor}/oniguruma/config.guess +91 -27
  143. package/deps/jq/{modules → vendor}/oniguruma/config.sub +716 -242
  144. package/deps/jq/{modules → vendor}/oniguruma/configure.ac +2 -2
  145. package/deps/jq/{modules → vendor}/oniguruma/depcomp +10 -9
  146. package/deps/jq/{modules → vendor}/oniguruma/doc/API +3 -1
  147. package/deps/jq/{modules → vendor}/oniguruma/doc/API.ja +3 -1
  148. package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.BUILTIN +10 -1
  149. package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.BUILTIN.ja +9 -1
  150. package/deps/jq/{modules → vendor}/oniguruma/doc/RE +12 -13
  151. package/deps/jq/{modules → vendor}/oniguruma/doc/RE.ja +12 -13
  152. package/deps/jq/{modules → vendor}/oniguruma/doc/SYNTAX.md +202 -167
  153. package/deps/jq/{modules → vendor}/oniguruma/doc/UNICODE_PROPERTIES +33 -1
  154. package/deps/jq/vendor/oniguruma/doc/onig_syn_md.c +667 -0
  155. package/deps/jq/{modules → vendor}/oniguruma/harnesses/base.c +1 -1
  156. package/deps/jq/{modules → vendor}/oniguruma/install-sh +9 -9
  157. package/deps/jq/{modules → vendor}/oniguruma/missing +50 -29
  158. package/deps/jq/{modules → vendor}/oniguruma/sample/callback_each_match.c +1 -3
  159. package/deps/jq/vendor/oniguruma/sbom.cdx.json +44 -0
  160. package/deps/jq/{modules → vendor}/oniguruma/src/ascii.c +4 -1
  161. package/deps/jq/{modules → vendor}/oniguruma/src/gperf_fold_key_conv.py +4 -4
  162. package/deps/jq/{modules → vendor}/oniguruma/src/gperf_unfold_key_conv.py +4 -4
  163. package/deps/jq/vendor/oniguruma/src/make_unicode_egcb.sh +7 -0
  164. package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_egcb_data.py +20 -19
  165. package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_fold.sh +5 -5
  166. package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_fold_data.py +37 -37
  167. package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_property.sh +2 -2
  168. package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_property_data.py +66 -65
  169. package/deps/jq/vendor/oniguruma/src/make_unicode_wb.sh +7 -0
  170. package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_wb_data.py +20 -19
  171. package/deps/jq/{modules → vendor}/oniguruma/src/oniguruma.h +6 -3
  172. package/deps/jq/{modules → vendor}/oniguruma/src/regcomp.c +14 -6
  173. package/deps/jq/{modules → vendor}/oniguruma/src/regerror.c +2 -2
  174. package/deps/jq/{modules → vendor}/oniguruma/src/regexec.c +85 -14
  175. package/deps/jq/{modules → vendor}/oniguruma/src/regint.h +17 -4
  176. package/deps/jq/{modules → vendor}/oniguruma/src/regparse.c +115 -27
  177. package/deps/jq/{modules → vendor}/oniguruma/src/regsyntax.c +10 -7
  178. package/deps/jq/{modules → vendor}/oniguruma/src/st.c +49 -75
  179. package/deps/jq/{modules → vendor}/oniguruma/src/st.h +3 -10
  180. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_egcb_data.c +54 -49
  181. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_fold1_key.c +1567 -1507
  182. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_fold2_key.c +1 -1
  183. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_fold3_key.c +1 -1
  184. package/deps/jq/vendor/oniguruma/src/unicode_fold_data.c +1619 -0
  185. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_property_data.c +5520 -4178
  186. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_property_data_posix.c +239 -83
  187. package/deps/jq/vendor/oniguruma/src/unicode_unfold_key.c +3497 -0
  188. package/deps/jq/{modules → vendor}/oniguruma/src/unicode_wb_data.c +51 -19
  189. package/deps/jq/{modules → vendor}/oniguruma/src/utf16_be.c +3 -2
  190. package/deps/jq/{modules → vendor}/oniguruma/src/utf16_le.c +3 -2
  191. package/deps/jq/{modules → vendor}/oniguruma/test/test_back.c +3 -3
  192. package/deps/jq/{modules → vendor}/oniguruma/test/test_options.c +2 -2
  193. package/deps/jq/{modules → vendor}/oniguruma/test/test_syntax.c +54 -2
  194. package/deps/jq/{modules → vendor}/oniguruma/test/test_utf8.c +19 -5
  195. package/deps/jq/{modules → vendor}/oniguruma/test/testc.c +1 -1
  196. package/deps/jq/{modules → vendor}/oniguruma/test/testp.c +1 -1
  197. package/deps/jq/{modules → vendor}/oniguruma/test-driver +13 -6
  198. package/deps/jq/{modules → vendor}/oniguruma/windows/CMakeLists.txt +1 -1
  199. package/index.d.ts +2 -1
  200. package/lib/index.js +1 -0
  201. package/lib/jq.js +2 -1
  202. package/package.json +4 -3
  203. package/test/santiy-async.test.js +4 -4
  204. package/test/santiy.test.js +4 -4
  205. package/test/template.test.js +6 -6
  206. package/deps/jq/modules/oniguruma/src/make_unicode_egcb.sh +0 -7
  207. package/deps/jq/modules/oniguruma/src/make_unicode_wb.sh +0 -7
  208. package/deps/jq/modules/oniguruma/src/unicode_fold_data.c +0 -1592
  209. package/deps/jq/modules/oniguruma/src/unicode_unfold_key.c +0 -3394
  210. package/deps/jq/scripts/update-website +0 -30
  211. /package/deps/jq/{src → vendor}/decNumber/ICU-license.html +0 -0
  212. /package/deps/jq/{src → vendor}/decNumber/decContext.c +0 -0
  213. /package/deps/jq/{src → vendor}/decNumber/decContext.h +0 -0
  214. /package/deps/jq/{src → vendor}/decNumber/decDPD.h +0 -0
  215. /package/deps/jq/{src → vendor}/decNumber/decDouble.c +0 -0
  216. /package/deps/jq/{src → vendor}/decNumber/decDouble.h +0 -0
  217. /package/deps/jq/{src → vendor}/decNumber/decNumber.h +0 -0
  218. /package/deps/jq/{src → vendor}/decNumber/decNumberLocal.h +0 -0
  219. /package/deps/jq/{src → vendor}/decNumber/decPacked.c +0 -0
  220. /package/deps/jq/{src → vendor}/decNumber/decPacked.h +0 -0
  221. /package/deps/jq/{src → vendor}/decNumber/decQuad.c +0 -0
  222. /package/deps/jq/{src → vendor}/decNumber/decQuad.h +0 -0
  223. /package/deps/jq/{src → vendor}/decNumber/decSingle.c +0 -0
  224. /package/deps/jq/{src → vendor}/decNumber/decSingle.h +0 -0
  225. /package/deps/jq/{src → vendor}/decNumber/decimal128.c +0 -0
  226. /package/deps/jq/{src → vendor}/decNumber/decimal128.h +0 -0
  227. /package/deps/jq/{src → vendor}/decNumber/decimal32.c +0 -0
  228. /package/deps/jq/{src → vendor}/decNumber/decimal32.h +0 -0
  229. /package/deps/jq/{src → vendor}/decNumber/decimal64.c +0 -0
  230. /package/deps/jq/{src → vendor}/decNumber/decimal64.h +0 -0
  231. /package/deps/jq/{src → vendor}/decNumber/decnumber.pdf +0 -0
  232. /package/deps/jq/{src → vendor}/decNumber/example1.c +0 -0
  233. /package/deps/jq/{src → vendor}/decNumber/example2.c +0 -0
  234. /package/deps/jq/{src → vendor}/decNumber/example3.c +0 -0
  235. /package/deps/jq/{src → vendor}/decNumber/example4.c +0 -0
  236. /package/deps/jq/{src → vendor}/decNumber/example5.c +0 -0
  237. /package/deps/jq/{src → vendor}/decNumber/example6.c +0 -0
  238. /package/deps/jq/{src → vendor}/decNumber/example7.c +0 -0
  239. /package/deps/jq/{src → vendor}/decNumber/example8.c +0 -0
  240. /package/deps/jq/{src → vendor}/decNumber/readme.txt +0 -0
  241. /package/deps/jq/{modules → vendor}/oniguruma/.travis.yml +0 -0
  242. /package/deps/jq/{modules → vendor}/oniguruma/AUTHORS +0 -0
  243. /package/deps/jq/{modules → vendor}/oniguruma/COPYING +0 -0
  244. /package/deps/jq/{modules → vendor}/oniguruma/ChangeLog +0 -0
  245. /package/deps/jq/{modules → vendor}/oniguruma/NEWS +0 -0
  246. /package/deps/jq/{modules → vendor}/oniguruma/README +0 -0
  247. /package/deps/jq/{modules → vendor}/oniguruma/README_japanese +0 -0
  248. /package/deps/jq/{modules → vendor}/oniguruma/autogen.sh +0 -0
  249. /package/deps/jq/{modules → vendor}/oniguruma/cmake/Config.cmake.in +0 -0
  250. /package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.API +0 -0
  251. /package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.API.ja +0 -0
  252. /package/deps/jq/{modules → vendor}/oniguruma/doc/FAQ +0 -0
  253. /package/deps/jq/{modules → vendor}/oniguruma/doc/FAQ.ja +0 -0
  254. /package/deps/jq/{modules → vendor}/oniguruma/harnesses/ascii_compatible.dict +0 -0
  255. /package/deps/jq/{modules → vendor}/oniguruma/harnesses/deluxe.c +0 -0
  256. /package/deps/jq/{modules → vendor}/oniguruma/harnesses/dict_conv.py +0 -0
  257. /package/deps/jq/{modules → vendor}/oniguruma/harnesses/fuzzer.options +0 -0
  258. /package/deps/jq/{modules → vendor}/oniguruma/harnesses/libfuzzer-onig.cpp +0 -0
  259. /package/deps/jq/{modules → vendor}/oniguruma/harnesses/regset.c +0 -0
  260. /package/deps/jq/{modules → vendor}/oniguruma/index.html +0 -0
  261. /package/deps/jq/{modules → vendor}/oniguruma/index_ja.html +0 -0
  262. /package/deps/jq/{modules → vendor}/oniguruma/m4/.whatever +0 -0
  263. /package/deps/jq/{modules → vendor}/oniguruma/make_win.bat +0 -0
  264. /package/deps/jq/{modules → vendor}/oniguruma/make_win32.bat +0 -0
  265. /package/deps/jq/{modules → vendor}/oniguruma/make_win64.bat +0 -0
  266. /package/deps/jq/{modules → vendor}/oniguruma/onig-config.cmake.in +0 -0
  267. /package/deps/jq/{modules → vendor}/oniguruma/onig-config.in +0 -0
  268. /package/deps/jq/{modules → vendor}/oniguruma/oniguruma.pc.cmake.in +0 -0
  269. /package/deps/jq/{modules → vendor}/oniguruma/oniguruma.pc.in +0 -0
  270. /package/deps/jq/{modules → vendor}/oniguruma/sample/CMakeLists.txt +0 -0
  271. /package/deps/jq/{modules → vendor}/oniguruma/sample/Makefile.am +0 -0
  272. /package/deps/jq/{modules → vendor}/oniguruma/sample/bug_fix.c +0 -0
  273. /package/deps/jq/{modules → vendor}/oniguruma/sample/callout.c +0 -0
  274. /package/deps/jq/{modules → vendor}/oniguruma/sample/count.c +0 -0
  275. /package/deps/jq/{modules → vendor}/oniguruma/sample/crnl.c +0 -0
  276. /package/deps/jq/{modules → vendor}/oniguruma/sample/echo.c +0 -0
  277. /package/deps/jq/{modules → vendor}/oniguruma/sample/encode.c +0 -0
  278. /package/deps/jq/{modules → vendor}/oniguruma/sample/listcap.c +0 -0
  279. /package/deps/jq/{modules → vendor}/oniguruma/sample/names.c +0 -0
  280. /package/deps/jq/{modules → vendor}/oniguruma/sample/posix.c +0 -0
  281. /package/deps/jq/{modules → vendor}/oniguruma/sample/regset.c +0 -0
  282. /package/deps/jq/{modules → vendor}/oniguruma/sample/scan.c +0 -0
  283. /package/deps/jq/{modules → vendor}/oniguruma/sample/simple.c +0 -0
  284. /package/deps/jq/{modules → vendor}/oniguruma/sample/sql.c +0 -0
  285. /package/deps/jq/{modules → vendor}/oniguruma/sample/syntax.c +0 -0
  286. /package/deps/jq/{modules → vendor}/oniguruma/sample/user_property.c +0 -0
  287. /package/deps/jq/{modules → vendor}/oniguruma/src/Makefile.am +0 -0
  288. /package/deps/jq/{modules → vendor}/oniguruma/src/Makefile.windows +0 -0
  289. /package/deps/jq/{modules → vendor}/oniguruma/src/big5.c +0 -0
  290. /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.cmake.in +0 -0
  291. /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.win32 +0 -0
  292. /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.win64 +0 -0
  293. /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.windows.in +0 -0
  294. /package/deps/jq/{modules → vendor}/oniguruma/src/cp1251.c +0 -0
  295. /package/deps/jq/{modules → vendor}/oniguruma/src/euc_jp.c +0 -0
  296. /package/deps/jq/{modules → vendor}/oniguruma/src/euc_jp_prop.c +0 -0
  297. /package/deps/jq/{modules → vendor}/oniguruma/src/euc_jp_prop.gperf +0 -0
  298. /package/deps/jq/{modules → vendor}/oniguruma/src/euc_kr.c +0 -0
  299. /package/deps/jq/{modules → vendor}/oniguruma/src/euc_tw.c +0 -0
  300. /package/deps/jq/{modules → vendor}/oniguruma/src/gb18030.c +0 -0
  301. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_1.c +0 -0
  302. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_10.c +0 -0
  303. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_11.c +0 -0
  304. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_13.c +0 -0
  305. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_14.c +0 -0
  306. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_15.c +0 -0
  307. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_16.c +0 -0
  308. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_2.c +0 -0
  309. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_3.c +0 -0
  310. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_4.c +0 -0
  311. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_5.c +0 -0
  312. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_6.c +0 -0
  313. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_7.c +0 -0
  314. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_8.c +0 -0
  315. /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_9.c +0 -0
  316. /package/deps/jq/{modules → vendor}/oniguruma/src/koi8.c +0 -0
  317. /package/deps/jq/{modules → vendor}/oniguruma/src/koi8_r.c +0 -0
  318. /package/deps/jq/{modules → vendor}/oniguruma/src/make_property.sh +0 -0
  319. /package/deps/jq/{modules → vendor}/oniguruma/src/mktable.c +0 -0
  320. /package/deps/jq/{modules → vendor}/oniguruma/src/onig_init.c +0 -0
  321. /package/deps/jq/{modules → vendor}/oniguruma/src/oniggnu.h +0 -0
  322. /package/deps/jq/{modules → vendor}/oniguruma/src/onigposix.h +0 -0
  323. /package/deps/jq/{modules → vendor}/oniguruma/src/regenc.c +0 -0
  324. /package/deps/jq/{modules → vendor}/oniguruma/src/regenc.h +0 -0
  325. /package/deps/jq/{modules → vendor}/oniguruma/src/regext.c +0 -0
  326. /package/deps/jq/{modules → vendor}/oniguruma/src/reggnu.c +0 -0
  327. /package/deps/jq/{modules → vendor}/oniguruma/src/regparse.h +0 -0
  328. /package/deps/jq/{modules → vendor}/oniguruma/src/regposerr.c +0 -0
  329. /package/deps/jq/{modules → vendor}/oniguruma/src/regposix.c +0 -0
  330. /package/deps/jq/{modules → vendor}/oniguruma/src/regtrav.c +0 -0
  331. /package/deps/jq/{modules → vendor}/oniguruma/src/regversion.c +0 -0
  332. /package/deps/jq/{modules → vendor}/oniguruma/src/sjis.c +0 -0
  333. /package/deps/jq/{modules → vendor}/oniguruma/src/sjis_prop.c +0 -0
  334. /package/deps/jq/{modules → vendor}/oniguruma/src/sjis_prop.gperf +0 -0
  335. /package/deps/jq/{modules → vendor}/oniguruma/src/unicode.c +0 -0
  336. /package/deps/jq/{modules → vendor}/oniguruma/src/utf32_be.c +0 -0
  337. /package/deps/jq/{modules → vendor}/oniguruma/src/utf32_le.c +0 -0
  338. /package/deps/jq/{modules → vendor}/oniguruma/src/utf8.c +0 -0
  339. /package/deps/jq/{modules → vendor}/oniguruma/test/CMakeLists.txt +0 -0
  340. /package/deps/jq/{modules → vendor}/oniguruma/test/Makefile.am +0 -0
  341. /package/deps/jq/{modules → vendor}/oniguruma/test/test.sh +0 -0
  342. /package/deps/jq/{modules → vendor}/oniguruma/test/test_regset.c +0 -0
  343. /package/deps/jq/{modules → vendor}/oniguruma/test/testu.c +0 -0
  344. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/stub.c +0 -0
  345. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_back.config +0 -0
  346. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_regset.config +0 -0
  347. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_syntax.config +0 -0
  348. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_utf8.config +0 -0
  349. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/testc.config +0 -0
  350. /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/testu.config +0 -0
  351. /package/deps/jq/{modules → vendor}/oniguruma/tis.config +0 -0
  352. /package/deps/jq/{modules → vendor}/oniguruma/windows/testc.c +0 -0
@@ -108,14 +108,14 @@ struct lexer_param;
108
108
  %left '+' '-'
109
109
  %left '*' '/' '%'
110
110
  %precedence NONOPT /* non-optional; rules for which a specialized
111
- '?' rule should be preferred over Exp '?' */
112
- %precedence '?'
111
+ '?' rule should be preferred over Expr '?' */
112
+ %precedence '?' '.' '[' FIELD
113
113
  %precedence "try"
114
114
  %precedence "catch"
115
115
 
116
116
 
117
- %type <blk> Exp Term
118
- %type <blk> MkDict MkDictPair ExpD
117
+ %type <blk> Query Expr Term
118
+ %type <blk> DictPairs DictPair DictExpr
119
119
  %type <blk> ElseBody
120
120
  %type <blk> String QQString
121
121
  %type <blk> FuncDef FuncDefs
@@ -139,15 +139,7 @@ struct lexer_param {
139
139
  void yyerror(YYLTYPE* loc, block* answer, int* errors,
140
140
  struct locfile* locations, struct lexer_param* lexer_param_ptr, const char *s){
141
141
  (*errors)++;
142
- if (strstr(s, "unexpected")) {
143
- #ifdef WIN32
144
- locfile_locate(locations, *loc, "jq: error: %s (Windows cmd shell quoting issues?)", s);
145
- #else
146
- locfile_locate(locations, *loc, "jq: error: %s (Unix shell quoting issues?)", s);
147
- #endif
148
- } else {
149
- locfile_locate(locations, *loc, "jq: error: %s", s);
150
- }
142
+ locfile_locate(locations, *loc, "jq: error: %s", s);
151
143
  }
152
144
 
153
145
  int yylex(YYSTYPE* yylval, YYLTYPE* yylloc, block* answer, int* errors,
@@ -287,7 +279,7 @@ static block gen_loc_object(location *loc, struct locfile *locations) {
287
279
 
288
280
  %%
289
281
  TopLevel:
290
- Module Imports Exp {
282
+ Module Imports Query {
291
283
  *answer = BLOCK($1, $2, gen_op_simple(TOP), $3);
292
284
  } |
293
285
  Module Imports FuncDefs {
@@ -298,13 +290,13 @@ Module:
298
290
  %empty {
299
291
  $$ = gen_noop();
300
292
  } |
301
- "module" Exp ';' {
293
+ "module" Query ';' {
302
294
  if (!block_is_const($2)) {
303
- FAIL(@$, "Module metadata must be constant");
295
+ FAIL(@2, "Module metadata must be constant");
304
296
  $$ = gen_noop();
305
297
  block_free($2);
306
298
  } else if (block_const_kind($2) != JV_KIND_OBJECT) {
307
- FAIL(@$, "Module metadata must be an object");
299
+ FAIL(@2, "Module metadata must be an object");
308
300
  $$ = gen_noop();
309
301
  block_free($2);
310
302
  } else {
@@ -328,172 +320,115 @@ FuncDef FuncDefs {
328
320
  $$ = block_join($1, $2);
329
321
  }
330
322
 
331
- Exp:
332
- FuncDef Exp %prec FUNCDEF {
323
+
324
+ Query:
325
+ FuncDef Query %prec FUNCDEF {
333
326
  $$ = block_bind_referenced($1, $2, OP_IS_CALL_PSEUDO);
334
327
  } |
335
-
336
- Term "as" Patterns '|' Exp {
328
+ Expr "as" Patterns '|' Query {
337
329
  $$ = gen_destructure($1, $3, $5);
338
330
  } |
339
- "reduce" Term "as" Patterns '(' Exp ';' Exp ')' {
340
- $$ = gen_reduce($2, $4, $6, $8);
341
- } |
342
-
343
- "foreach" Term "as" Patterns '(' Exp ';' Exp ';' Exp ')' {
344
- $$ = gen_foreach($2, $4, $6, $8, $10);
345
- } |
346
-
347
- "foreach" Term "as" Patterns '(' Exp ';' Exp ')' {
348
- $$ = gen_foreach($2, $4, $6, $8, gen_noop());
349
- } |
350
-
351
- "if" Exp "then" Exp ElseBody {
352
- $$ = gen_cond($2, $4, $5);
353
- } |
354
- "if" Exp "then" error {
355
- FAIL(@$, "Possibly unterminated 'if' statement");
356
- $$ = $2;
357
- } |
358
-
359
- "try" Exp "catch" Exp {
360
- $$ = gen_try($2, $4);
361
- } |
362
- "try" Exp {
363
- $$ = gen_try($2, gen_op_simple(BACKTRACK));
364
- } |
365
- "try" Exp "catch" error {
366
- FAIL(@$, "Possibly unterminated 'try' statement");
367
- $$ = $2;
368
- } |
369
-
370
- "label" BINDING '|' Exp {
331
+ "label" BINDING '|' Query {
371
332
  jv v = jv_string_fmt("*label-%s", jv_string_value($2));
372
333
  $$ = gen_location(@$, locations, gen_label(jv_string_value(v), $4));
373
334
  jv_free($2);
374
335
  jv_free(v);
375
336
  } |
376
-
377
- Exp '?' {
378
- $$ = gen_try($1, gen_op_simple(BACKTRACK));
337
+ Query '|' Query {
338
+ $$ = block_join($1, $3);
339
+ } |
340
+ Query ',' Query {
341
+ $$ = gen_both($1, $3);
379
342
  } |
343
+ Expr {
344
+ $$ = $1;
345
+ }
346
+
380
347
 
381
- Exp '=' Exp {
348
+ Expr:
349
+ Expr "//" Expr {
350
+ $$ = gen_definedor($1, $3);
351
+ } |
352
+ Expr '=' Expr {
382
353
  $$ = gen_call("_assign", BLOCK(gen_lambda($1), gen_lambda($3)));
383
354
  } |
384
-
385
- Exp "or" Exp {
355
+ Expr "or" Expr {
386
356
  $$ = gen_or($1, $3);
387
357
  } |
388
-
389
- Exp "and" Exp {
358
+ Expr "and" Expr {
390
359
  $$ = gen_and($1, $3);
391
360
  } |
392
-
393
- Exp "//" Exp {
394
- $$ = gen_definedor($1, $3);
395
- } |
396
-
397
- Exp "//=" Exp {
361
+ Expr "//=" Expr {
398
362
  $$ = gen_definedor_assign($1, $3);
399
363
  } |
400
-
401
- Exp "|=" Exp {
364
+ Expr "|=" Expr {
402
365
  $$ = gen_call("_modify", BLOCK(gen_lambda($1), gen_lambda($3)));
403
366
  } |
404
-
405
- Exp '|' Exp {
406
- $$ = block_join($1, $3);
407
- } |
408
-
409
- Exp ',' Exp {
410
- $$ = gen_both($1, $3);
411
- } |
412
-
413
- Exp '+' Exp {
367
+ Expr '+' Expr {
414
368
  $$ = gen_binop($1, $3, '+');
415
369
  } |
416
-
417
- Exp "+=" Exp {
370
+ Expr "+=" Expr {
418
371
  $$ = gen_update($1, $3, '+');
419
372
  } |
420
-
421
- '-' Exp {
422
- $$ = BLOCK($2, gen_call("_negate", gen_noop()));
423
- } |
424
-
425
- Exp '-' Exp {
373
+ Expr '-' Expr {
426
374
  $$ = gen_binop($1, $3, '-');
427
375
  } |
428
-
429
- Exp "-=" Exp {
376
+ Expr "-=" Expr {
430
377
  $$ = gen_update($1, $3, '-');
431
378
  } |
432
-
433
- Exp '*' Exp {
379
+ Expr '*' Expr {
434
380
  $$ = gen_binop($1, $3, '*');
435
381
  } |
436
-
437
- Exp "*=" Exp {
382
+ Expr "*=" Expr {
438
383
  $$ = gen_update($1, $3, '*');
439
384
  } |
440
-
441
- Exp '/' Exp {
385
+ Expr '/' Expr {
442
386
  $$ = gen_binop($1, $3, '/');
443
387
  } |
444
-
445
- Exp '%' Exp {
388
+ Expr '%' Expr {
446
389
  $$ = gen_binop($1, $3, '%');
447
390
  } |
448
-
449
- Exp "/=" Exp {
391
+ Expr "/=" Expr {
450
392
  $$ = gen_update($1, $3, '/');
451
393
  } |
452
-
453
- Exp SETMOD Exp {
394
+ Expr SETMOD Expr {
454
395
  $$ = gen_update($1, $3, '%');
455
396
  } |
456
-
457
- Exp "==" Exp {
397
+ Expr "==" Expr {
458
398
  $$ = gen_binop($1, $3, EQ);
459
399
  } |
460
-
461
- Exp "!=" Exp {
400
+ Expr "!=" Expr {
462
401
  $$ = gen_binop($1, $3, NEQ);
463
402
  } |
464
-
465
- Exp '<' Exp {
403
+ Expr '<' Expr {
466
404
  $$ = gen_binop($1, $3, '<');
467
405
  } |
468
-
469
- Exp '>' Exp {
406
+ Expr '>' Expr {
470
407
  $$ = gen_binop($1, $3, '>');
471
408
  } |
472
-
473
- Exp "<=" Exp {
409
+ Expr "<=" Expr {
474
410
  $$ = gen_binop($1, $3, LESSEQ);
475
411
  } |
476
-
477
- Exp ">=" Exp {
412
+ Expr ">=" Expr {
478
413
  $$ = gen_binop($1, $3, GREATEREQ);
479
414
  } |
480
-
481
- Term {
415
+ Term %prec NONOPT {
482
416
  $$ = $1;
483
417
  }
484
418
 
419
+
485
420
  Import:
486
421
  ImportWhat ';' {
487
422
  $$ = $1;
488
423
  } |
489
- ImportWhat Exp ';' {
424
+ ImportWhat Query ';' {
490
425
  if (!block_is_const($2)) {
491
- FAIL(@$, "Module metadata must be constant");
426
+ FAIL(@2, "Module metadata must be constant");
492
427
  $$ = gen_noop();
493
428
  block_free($1);
494
429
  block_free($2);
495
430
  } else if (block_const_kind($2) != JV_KIND_OBJECT) {
496
- FAIL(@$, "Module metadata must be an object");
431
+ FAIL(@2, "Module metadata must be an object");
497
432
  $$ = gen_noop();
498
433
  block_free($1);
499
434
  block_free($2);
@@ -529,7 +464,7 @@ ImportWhat:
529
464
  ImportFrom:
530
465
  String {
531
466
  if (!block_is_const($1)) {
532
- FAIL(@$, "Import path must be constant");
467
+ FAIL(@1, "Import path must be constant");
533
468
  $$ = gen_const(jv_string(""));
534
469
  block_free($1);
535
470
  } else {
@@ -538,12 +473,12 @@ String {
538
473
  }
539
474
 
540
475
  FuncDef:
541
- "def" IDENT ':' Exp ';' {
476
+ "def" IDENT ':' Query ';' {
542
477
  $$ = gen_function(jv_string_value($2), gen_noop(), $4);
543
478
  jv_free($2);
544
479
  } |
545
480
 
546
- "def" IDENT '(' Params ')' ':' Exp ';' {
481
+ "def" IDENT '(' Params ')' ':' Query ';' {
547
482
  $$ = gen_function(jv_string_value($2), $4, $7);
548
483
  jv_free($2);
549
484
  }
@@ -590,33 +525,22 @@ QQString:
590
525
  QQString QQSTRING_TEXT {
591
526
  $$ = gen_binop($1, gen_const($2), '+');
592
527
  } |
593
- QQString QQSTRING_INTERP_START Exp QQSTRING_INTERP_END {
528
+ QQString QQSTRING_INTERP_START Query QQSTRING_INTERP_END {
594
529
  $$ = gen_binop($1, gen_format($3, jv_copy($<literal>0)), '+');
595
530
  }
596
531
 
597
532
 
598
533
  ElseBody:
599
- "elif" Exp "then" Exp ElseBody {
534
+ "elif" Query "then" Query ElseBody {
600
535
  $$ = gen_cond($2, $4, $5);
601
536
  } |
602
- "else" Exp "end" {
537
+ "else" Query "end" {
603
538
  $$ = $2;
604
539
  } |
605
540
  "end" {
606
541
  $$ = gen_noop();
607
542
  }
608
543
 
609
- ExpD:
610
- ExpD '|' ExpD {
611
- $$ = block_join($1, $3);
612
- } |
613
- '-' ExpD {
614
- $$ = BLOCK($2, gen_call("_negate", gen_noop()));
615
- } |
616
- Term {
617
- $$ = $1;
618
- }
619
-
620
544
 
621
545
  Term:
622
546
  '.' {
@@ -671,16 +595,16 @@ Term '.' String %prec NONOPT {
671
595
  $$ = gen_noop();
672
596
  } |
673
597
  /* FIXME: string literals */
674
- Term '[' Exp ']' '?' {
598
+ Term '[' Query ']' '?' {
675
599
  $$ = gen_index_opt($1, $3);
676
600
  } |
677
- Term '[' Exp ']' %prec NONOPT {
601
+ Term '[' Query ']' %prec NONOPT {
678
602
  $$ = gen_index($1, $3);
679
603
  } |
680
- Term '.' '[' Exp ']' '?' {
604
+ Term '.' '[' Query ']' '?' {
681
605
  $$ = gen_index_opt($1, $4);
682
606
  } |
683
- Term '.' '[' Exp ']' %prec NONOPT {
607
+ Term '.' '[' Query ']' %prec NONOPT {
684
608
  $$ = gen_index($1, $4);
685
609
  } |
686
610
  Term '[' ']' '?' {
@@ -695,24 +619,27 @@ Term '.' '[' ']' '?' {
695
619
  Term '.' '[' ']' %prec NONOPT {
696
620
  $$ = block_join($1, gen_op_simple(EACH));
697
621
  } |
698
- Term '[' Exp ':' Exp ']' '?' {
622
+ Term '[' Query ':' Query ']' '?' {
699
623
  $$ = gen_slice_index($1, $3, $5, INDEX_OPT);
700
624
  } |
701
- Term '[' Exp ':' ']' '?' {
625
+ Term '[' Query ':' ']' '?' {
702
626
  $$ = gen_slice_index($1, $3, gen_const(jv_null()), INDEX_OPT);
703
627
  } |
704
- Term '[' ':' Exp ']' '?' {
628
+ Term '[' ':' Query ']' '?' {
705
629
  $$ = gen_slice_index($1, gen_const(jv_null()), $4, INDEX_OPT);
706
630
  } |
707
- Term '[' Exp ':' Exp ']' %prec NONOPT {
631
+ Term '[' Query ':' Query ']' %prec NONOPT {
708
632
  $$ = gen_slice_index($1, $3, $5, INDEX);
709
633
  } |
710
- Term '[' Exp ':' ']' %prec NONOPT {
634
+ Term '[' Query ':' ']' %prec NONOPT {
711
635
  $$ = gen_slice_index($1, $3, gen_const(jv_null()), INDEX);
712
636
  } |
713
- Term '[' ':' Exp ']' %prec NONOPT {
637
+ Term '[' ':' Query ']' %prec NONOPT {
714
638
  $$ = gen_slice_index($1, gen_const(jv_null()), $4, INDEX);
715
639
  } |
640
+ Term '?' {
641
+ $$ = gen_try($1, gen_op_simple(BACKTRACK));
642
+ } |
716
643
  LITERAL {
717
644
  $$ = gen_const($1);
718
645
  } |
@@ -722,22 +649,51 @@ String {
722
649
  FORMAT {
723
650
  $$ = gen_format(gen_noop(), $1);
724
651
  } |
725
- '(' Exp ')' {
652
+ '-' Term {
653
+ $$ = BLOCK($2, gen_call("_negate", gen_noop()));
654
+ } |
655
+ '(' Query ')' {
726
656
  $$ = $2;
727
657
  } |
728
- '[' Exp ']' {
658
+ '[' Query ']' {
729
659
  $$ = gen_collect($2);
730
660
  } |
731
661
  '[' ']' {
732
662
  $$ = gen_const(jv_array());
733
663
  } |
734
- '{' MkDict '}' {
664
+ '{' DictPairs '}' {
735
665
  block o = gen_const_object($2);
736
666
  if (o.first != NULL)
737
667
  $$ = o;
738
668
  else
739
669
  $$ = BLOCK(gen_subexp(gen_const(jv_object())), $2, gen_op_simple(POP));
740
670
  } |
671
+ "reduce" Expr "as" Patterns '(' Query ';' Query ')' {
672
+ $$ = gen_reduce($2, $4, $6, $8);
673
+ } |
674
+ "foreach" Expr "as" Patterns '(' Query ';' Query ';' Query ')' {
675
+ $$ = gen_foreach($2, $4, $6, $8, $10);
676
+ } |
677
+ "foreach" Expr "as" Patterns '(' Query ';' Query ')' {
678
+ $$ = gen_foreach($2, $4, $6, $8, gen_noop());
679
+ } |
680
+ "if" Query "then" Query ElseBody {
681
+ $$ = gen_cond($2, $4, $5);
682
+ } |
683
+ "if" Query "then" error {
684
+ FAIL(@$, "Possibly unterminated 'if' statement");
685
+ $$ = $2;
686
+ } |
687
+ "try" Expr "catch" Expr {
688
+ $$ = gen_try($2, $4);
689
+ } |
690
+ "try" Expr "catch" error {
691
+ FAIL(@$, "Possibly unterminated 'try' statement");
692
+ $$ = $2;
693
+ } |
694
+ "try" Expr {
695
+ $$ = gen_try($2, gen_op_simple(BACKTRACK));
696
+ } |
741
697
  /*
742
698
  * This `$$$$varname` hack is strictly private to jq builtins. DO NOT USE!!
743
699
  *
@@ -795,7 +751,7 @@ Args ';' Arg {
795
751
  }
796
752
 
797
753
  Arg:
798
- Exp {
754
+ Query {
799
755
  $$ = gen_lambda($1);
800
756
  }
801
757
 
@@ -859,10 +815,10 @@ Keyword ':' Pattern {
859
815
  String ':' Pattern {
860
816
  $$ = gen_object_matcher($1, $3);
861
817
  } |
862
- '(' Exp ')' ':' Pattern {
818
+ '(' Query ')' ':' Pattern {
863
819
  jv msg = check_object_key($2);
864
820
  if (jv_is_valid(msg)) {
865
- FAIL(@$, jv_string_value(msg));
821
+ FAIL(@2, jv_string_value(msg));
866
822
  }
867
823
  jv_free(msg);
868
824
  $$ = gen_object_matcher($2, $5);
@@ -928,61 +884,73 @@ Keyword:
928
884
  $$ = jv_string("break");
929
885
  }
930
886
 
931
- MkDict:
887
+
888
+ DictPairs:
932
889
  %empty {
933
- $$=gen_noop();
890
+ $$ = gen_noop();
891
+ } |
892
+ DictPair {
893
+ $$ = $1;
934
894
  } |
935
- MkDictPair { $$ = $1; }
936
- | MkDictPair ',' MkDict { $$=block_join($1, $3); }
937
- | error ',' MkDict { $$ = $3; }
895
+ DictPair ',' DictPairs {
896
+ $$ = block_join($1, $3);
897
+ }
938
898
 
939
- MkDictPair:
940
- IDENT ':' ExpD {
899
+ DictPair:
900
+ IDENT ':' DictExpr {
941
901
  $$ = gen_dictpair(gen_const($1), $3);
942
- }
943
- | Keyword ':' ExpD {
902
+ } |
903
+ Keyword ':' DictExpr {
944
904
  $$ = gen_dictpair(gen_const($1), $3);
945
- }
946
- | String ':' ExpD {
905
+ } |
906
+ String ':' DictExpr {
947
907
  $$ = gen_dictpair($1, $3);
948
- }
949
- | String {
908
+ } |
909
+ String {
950
910
  $$ = gen_dictpair($1, BLOCK(gen_op_simple(POP), gen_op_simple(DUP2),
951
911
  gen_op_simple(DUP2), gen_op_simple(INDEX)));
952
- }
953
- | BINDING ':' ExpD {
912
+ } |
913
+ BINDING ':' DictExpr {
954
914
  $$ = gen_dictpair(gen_location(@$, locations, gen_op_unbound(LOADV, jv_string_value($1))),
955
915
  $3);
956
916
  jv_free($1);
957
- }
958
- | BINDING {
917
+ } |
918
+ BINDING {
959
919
  $$ = gen_dictpair(gen_const($1),
960
920
  gen_location(@$, locations, gen_op_unbound(LOADV, jv_string_value($1))));
961
- }
962
- | IDENT {
921
+ } |
922
+ IDENT {
963
923
  $$ = gen_dictpair(gen_const(jv_copy($1)),
964
924
  gen_index(gen_noop(), gen_const($1)));
965
- }
966
- | "$__loc__" {
925
+ } |
926
+ "$__loc__" {
967
927
  $$ = gen_dictpair(gen_const(jv_string("__loc__")),
968
928
  gen_loc_object(&@$, locations));
969
- }
970
- | Keyword {
929
+ } |
930
+ Keyword {
971
931
  $$ = gen_dictpair(gen_const(jv_copy($1)),
972
932
  gen_index(gen_noop(), gen_const($1)));
973
- }
974
- | '(' Exp ')' ':' ExpD {
933
+ } |
934
+ '(' Query ')' ':' DictExpr {
975
935
  jv msg = check_object_key($2);
976
936
  if (jv_is_valid(msg)) {
977
- FAIL(@$, jv_string_value(msg));
937
+ FAIL(@2, jv_string_value(msg));
978
938
  }
979
939
  jv_free(msg);
980
940
  $$ = gen_dictpair($2, $5);
981
- }
982
- | error ':' ExpD {
983
- FAIL(@$, "May need parentheses around object key expression");
941
+ } |
942
+ error ':' DictExpr {
943
+ FAIL(@1, "May need parentheses around object key expression");
984
944
  $$ = $3;
985
- }
945
+ }
946
+
947
+ DictExpr:
948
+ DictExpr '|' DictExpr {
949
+ $$ = block_join($1, $3);
950
+ } |
951
+ Expr {
952
+ $$ = $1;
953
+ }
986
954
  %%
987
955
 
988
956
  int jq_parse(struct locfile* locations, block* answer) {