@port-labs/jq-node-bindings 0.0.13 → 0.0.15-dev1
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.
- package/README.md +6 -1
- package/binding.gyp +41 -19
- package/configure +1 -1
- package/deps/jq/.gitattributes +12 -0
- package/deps/jq/AUTHORS +149 -43
- package/deps/jq/COPYING +75 -1
- package/deps/jq/ChangeLog +2 -2
- package/deps/jq/Makefile.am +106 -65
- package/deps/jq/NEWS.md +391 -0
- package/deps/jq/README.md +54 -52
- package/deps/jq/SECURITY.md +7 -0
- package/deps/jq/compile-ios.sh +106 -102
- package/deps/jq/configure.ac +72 -59
- package/deps/jq/docs/Pipfile +14 -0
- package/deps/jq/docs/Pipfile.lock +415 -0
- package/deps/jq/docs/README.md +15 -14
- package/deps/jq/docs/build_manpage.py +251 -0
- package/deps/jq/docs/build_mantests.py +21 -0
- package/deps/jq/docs/build_website.py +95 -0
- package/deps/jq/docs/content/download/default.yml +249 -0
- package/deps/jq/docs/content/index.yml +83 -0
- package/deps/jq/docs/content/{3.manual/v1.6 → manual/dev}/manual.yml +992 -452
- package/deps/jq/docs/content/{3.manual → manual}/v1.3/manual.yml +105 -116
- package/deps/jq/docs/content/{3.manual → manual}/v1.4/manual.yml +122 -129
- package/deps/jq/docs/content/{3.manual → manual}/v1.5/manual.yml +313 -262
- package/deps/jq/docs/content/{3.manual → manual/v1.6}/manual.yml +407 -332
- package/deps/jq/docs/content/manual/v1.7/manual.yml +3697 -0
- package/deps/jq/docs/content/tutorial/default.yml +337 -0
- package/deps/jq/docs/manual_schema.yml +60 -0
- package/deps/jq/docs/public/css/style.css +99 -0
- package/deps/jq/docs/public/icon.png +0 -0
- package/deps/jq/docs/public/icon.svg +1 -0
- package/deps/jq/docs/public/jq.svg +1 -0
- package/deps/jq/docs/public/js/manual-search.js +31 -49
- package/deps/jq/docs/templates/default.html.j2 +31 -0
- package/deps/jq/docs/templates/index.html.j2 +58 -0
- package/deps/jq/docs/templates/manual.html.j2 +120 -0
- package/deps/jq/docs/templates/shared/_footer.html.j2 +14 -0
- package/deps/jq/docs/templates/shared/_head.html.j2 +23 -0
- package/deps/jq/docs/templates/shared/_navbar.html.j2 +40 -0
- package/deps/jq/docs/validate_manual_schema.py +19 -0
- package/deps/jq/jq.1.prebuilt +1102 -294
- package/deps/jq/jq.spec +2 -3
- package/deps/jq/libjq.pc.in +11 -0
- package/deps/jq/m4/ax_pthread.m4 +522 -0
- package/deps/jq/modules/oniguruma/.travis.yml +17 -0
- package/deps/jq/modules/oniguruma/CMakeLists.txt +206 -41
- package/deps/jq/modules/oniguruma/COPYING +23 -25
- package/deps/jq/modules/oniguruma/HISTORY +368 -23
- package/deps/jq/modules/oniguruma/Makefile.am +61 -7
- package/deps/jq/modules/oniguruma/README +34 -20
- package/deps/jq/modules/oniguruma/README.md +106 -33
- package/deps/jq/modules/oniguruma/README_japanese +183 -0
- package/deps/jq/modules/oniguruma/autogen.sh +9 -0
- package/deps/jq/modules/oniguruma/cmake/Config.cmake.in +4 -0
- package/deps/jq/modules/oniguruma/configure.ac +66 -55
- package/deps/jq/modules/oniguruma/doc/API +485 -42
- package/deps/jq/modules/oniguruma/doc/API.ja +732 -293
- package/deps/jq/modules/oniguruma/doc/CALLOUTS.API +397 -0
- package/deps/jq/modules/oniguruma/doc/CALLOUTS.API.ja +393 -0
- package/deps/jq/modules/oniguruma/doc/CALLOUTS.BUILTIN +95 -0
- package/deps/jq/modules/oniguruma/doc/CALLOUTS.BUILTIN.ja +93 -0
- package/deps/jq/modules/oniguruma/doc/FAQ +3 -3
- package/deps/jq/modules/oniguruma/doc/FAQ.ja +8 -8
- package/deps/jq/modules/oniguruma/doc/RE +223 -63
- package/deps/jq/modules/oniguruma/doc/RE.ja +420 -265
- package/deps/jq/modules/oniguruma/doc/SYNTAX.md +1091 -0
- package/deps/jq/modules/oniguruma/doc/UNICODE_PROPERTIES +840 -697
- package/deps/jq/modules/oniguruma/harnesses/ascii_compatible.dict +113 -0
- package/deps/jq/modules/oniguruma/harnesses/base.c +749 -0
- package/deps/jq/modules/oniguruma/harnesses/deluxe.c +206 -0
- package/deps/jq/modules/oniguruma/harnesses/dict_conv.py +72 -0
- package/deps/jq/modules/oniguruma/harnesses/fuzzer.options +2 -0
- package/deps/jq/modules/oniguruma/harnesses/libfuzzer-onig.cpp +45 -0
- package/deps/jq/modules/oniguruma/harnesses/regset.c +392 -0
- package/deps/jq/modules/oniguruma/index.html +16 -5
- package/deps/jq/modules/oniguruma/index_ja.html +16 -5
- package/deps/jq/modules/oniguruma/make_win.bat +5 -0
- package/deps/jq/modules/oniguruma/make_win32.bat +5 -3
- package/deps/jq/modules/oniguruma/make_win64.bat +5 -3
- package/deps/jq/modules/oniguruma/onig-config.cmake.in +80 -0
- package/deps/jq/modules/oniguruma/onig-config.in +1 -1
- package/deps/jq/modules/oniguruma/oniguruma.pc.cmake.in +1 -1
- package/deps/jq/modules/oniguruma/oniguruma.pc.in +0 -1
- package/deps/jq/modules/oniguruma/sample/CMakeLists.txt +9 -2
- package/deps/jq/modules/oniguruma/sample/Makefile.am +24 -5
- package/deps/jq/modules/oniguruma/sample/bug_fix.c +13 -51
- package/deps/jq/modules/oniguruma/sample/callback_each_match.c +168 -0
- package/deps/jq/modules/oniguruma/sample/callout.c +268 -0
- package/deps/jq/modules/oniguruma/sample/count.c +125 -0
- package/deps/jq/modules/oniguruma/sample/crnl.c +6 -4
- package/deps/jq/modules/oniguruma/sample/echo.c +136 -0
- package/deps/jq/modules/oniguruma/sample/encode.c +53 -146
- package/deps/jq/modules/oniguruma/sample/listcap.c +18 -10
- package/deps/jq/modules/oniguruma/sample/names.c +10 -6
- package/deps/jq/modules/oniguruma/sample/posix.c +13 -2
- package/deps/jq/modules/oniguruma/sample/regset.c +95 -0
- package/deps/jq/modules/oniguruma/sample/scan.c +20 -6
- package/deps/jq/modules/oniguruma/sample/simple.c +8 -4
- package/deps/jq/modules/oniguruma/sample/sql.c +13 -8
- package/deps/jq/modules/oniguruma/sample/syntax.c +11 -10
- package/deps/jq/modules/oniguruma/sample/user_property.c +12 -7
- package/deps/jq/modules/oniguruma/src/Makefile.am +41 -15
- package/deps/jq/modules/oniguruma/src/Makefile.windows +196 -183
- package/deps/jq/modules/oniguruma/src/ascii.c +64 -7
- package/deps/jq/modules/oniguruma/src/big5.c +25 -15
- package/deps/jq/modules/oniguruma/src/config.h.cmake.in +7 -22
- package/deps/jq/modules/oniguruma/src/config.h.win32 +56 -84
- package/deps/jq/modules/oniguruma/src/config.h.win64 +56 -84
- package/deps/jq/modules/oniguruma/src/config.h.windows.in +62 -0
- package/deps/jq/modules/oniguruma/src/cp1251.c +14 -8
- package/deps/jq/modules/oniguruma/src/euc_jp.c +28 -30
- package/deps/jq/modules/oniguruma/src/euc_jp_prop.c +25 -32
- package/deps/jq/modules/oniguruma/src/euc_jp_prop.gperf +1 -2
- package/deps/jq/modules/oniguruma/src/euc_kr.c +27 -15
- package/deps/jq/modules/oniguruma/src/euc_tw.c +40 -17
- package/deps/jq/modules/oniguruma/src/gb18030.c +177 -119
- package/deps/jq/modules/oniguruma/src/gperf_fold_key_conv.py +12 -8
- package/deps/jq/modules/oniguruma/src/gperf_unfold_key_conv.py +8 -6
- package/deps/jq/modules/oniguruma/src/iso8859_1.c +92 -91
- package/deps/jq/modules/oniguruma/src/iso8859_10.c +13 -29
- package/deps/jq/modules/oniguruma/src/iso8859_11.c +4 -2
- package/deps/jq/modules/oniguruma/src/iso8859_13.c +13 -33
- package/deps/jq/modules/oniguruma/src/iso8859_14.c +13 -30
- package/deps/jq/modules/oniguruma/src/iso8859_15.c +13 -34
- package/deps/jq/modules/oniguruma/src/iso8859_16.c +13 -29
- package/deps/jq/modules/oniguruma/src/iso8859_2.c +13 -29
- package/deps/jq/modules/oniguruma/src/iso8859_3.c +13 -33
- package/deps/jq/modules/oniguruma/src/iso8859_4.c +13 -32
- package/deps/jq/modules/oniguruma/src/iso8859_5.c +16 -23
- package/deps/jq/modules/oniguruma/src/iso8859_6.c +4 -2
- package/deps/jq/modules/oniguruma/src/iso8859_7.c +14 -29
- package/deps/jq/modules/oniguruma/src/iso8859_8.c +4 -2
- package/deps/jq/modules/oniguruma/src/iso8859_9.c +13 -33
- package/deps/jq/modules/oniguruma/src/koi8.c +14 -27
- package/deps/jq/modules/oniguruma/src/koi8_r.c +12 -19
- package/deps/jq/modules/oniguruma/src/make_property.sh +21 -0
- package/deps/jq/modules/oniguruma/src/make_unicode_egcb.sh +7 -0
- package/deps/jq/modules/oniguruma/src/make_unicode_egcb_data.py +267 -0
- package/deps/jq/modules/oniguruma/src/make_unicode_fold.sh +25 -11
- package/deps/jq/modules/oniguruma/src/make_unicode_fold_data.py +206 -26
- package/deps/jq/modules/oniguruma/src/make_unicode_property.sh +19 -10
- package/deps/jq/modules/oniguruma/src/make_unicode_property_data.py +474 -375
- package/deps/jq/modules/oniguruma/src/make_unicode_wb.sh +7 -0
- package/deps/jq/modules/oniguruma/src/make_unicode_wb_data.py +267 -0
- package/deps/jq/modules/oniguruma/src/mktable.c +28 -24
- package/deps/jq/modules/oniguruma/src/onig_init.c +2 -2
- package/deps/jq/modules/oniguruma/src/oniggnu.h +7 -5
- package/deps/jq/modules/oniguruma/src/onigposix.h +40 -16
- package/deps/jq/modules/oniguruma/src/oniguruma.h +357 -107
- package/deps/jq/modules/oniguruma/src/regcomp.c +6214 -3933
- package/deps/jq/modules/oniguruma/src/regenc.c +197 -120
- package/deps/jq/modules/oniguruma/src/regenc.h +106 -63
- package/deps/jq/modules/oniguruma/src/regerror.c +112 -91
- package/deps/jq/modules/oniguruma/src/regexec.c +4876 -2010
- package/deps/jq/modules/oniguruma/src/regext.c +8 -8
- package/deps/jq/modules/oniguruma/src/reggnu.c +13 -17
- package/deps/jq/modules/oniguruma/src/regint.h +757 -491
- package/deps/jq/modules/oniguruma/src/regparse.c +7204 -3240
- package/deps/jq/modules/oniguruma/src/regparse.h +361 -218
- package/deps/jq/modules/oniguruma/src/regposerr.c +49 -9
- package/deps/jq/modules/oniguruma/src/regposix.c +106 -24
- package/deps/jq/modules/oniguruma/src/regsyntax.c +66 -13
- package/deps/jq/modules/oniguruma/src/regtrav.c +1 -1
- package/deps/jq/modules/oniguruma/src/regversion.c +6 -4
- package/deps/jq/modules/oniguruma/src/sjis.c +23 -52
- package/deps/jq/modules/oniguruma/src/sjis_prop.c +25 -32
- package/deps/jq/modules/oniguruma/src/sjis_prop.gperf +1 -2
- package/deps/jq/modules/oniguruma/src/st.c +248 -249
- package/deps/jq/modules/oniguruma/src/st.h +4 -5
- package/deps/jq/modules/oniguruma/src/unicode.c +869 -294
- package/deps/jq/modules/oniguruma/src/unicode_egcb_data.c +1419 -0
- package/deps/jq/modules/oniguruma/src/unicode_fold1_key.c +1829 -1300
- package/deps/jq/modules/oniguruma/src/unicode_fold2_key.c +32 -9
- package/deps/jq/modules/oniguruma/src/unicode_fold3_key.c +32 -9
- package/deps/jq/modules/oniguruma/src/unicode_fold_data.c +1210 -984
- package/deps/jq/modules/oniguruma/src/unicode_property_data.c +22480 -15198
- package/deps/jq/modules/oniguruma/src/unicode_property_data_posix.c +1463 -591
- package/deps/jq/modules/oniguruma/src/unicode_unfold_key.c +1958 -1418
- package/deps/jq/modules/oniguruma/src/unicode_wb_data.c +1106 -0
- package/deps/jq/modules/oniguruma/src/utf16_be.c +90 -49
- package/deps/jq/modules/oniguruma/src/utf16_le.c +80 -49
- package/deps/jq/modules/oniguruma/src/utf32_be.c +14 -42
- package/deps/jq/modules/oniguruma/src/utf32_le.c +13 -40
- package/deps/jq/modules/oniguruma/src/utf8.c +33 -78
- package/deps/jq/modules/oniguruma/test/CMakeLists.txt +55 -0
- package/deps/jq/modules/oniguruma/test/Makefile.am +65 -10
- package/deps/jq/modules/oniguruma/test/test.sh +17 -0
- package/deps/jq/modules/oniguruma/test/test_back.c +1450 -0
- package/deps/jq/modules/oniguruma/test/test_options.c +228 -0
- package/deps/jq/modules/oniguruma/test/test_regset.c +466 -0
- package/deps/jq/modules/oniguruma/test/test_syntax.c +365 -0
- package/deps/jq/modules/oniguruma/test/test_utf8.c +1761 -0
- package/deps/jq/modules/oniguruma/test/testc.c +128 -88
- package/deps/jq/modules/oniguruma/test/testp.c +613 -0
- package/deps/jq/modules/oniguruma/test/testu.c +75 -28
- package/deps/jq/modules/oniguruma/tis-ci/stub.c +3 -0
- package/deps/jq/modules/oniguruma/tis-ci/test_back.config +26 -0
- package/deps/jq/modules/oniguruma/tis-ci/test_regset.config +20 -0
- package/deps/jq/modules/oniguruma/tis-ci/test_syntax.config +26 -0
- package/deps/jq/modules/oniguruma/tis-ci/test_utf8.config +25 -0
- package/deps/jq/modules/oniguruma/tis-ci/testc.config +26 -0
- package/deps/jq/modules/oniguruma/tis-ci/testu.config +24 -0
- package/deps/jq/modules/oniguruma/tis.config +1336 -0
- package/deps/jq/modules/oniguruma/windows/CMakeLists.txt +8 -0
- package/deps/jq/modules/oniguruma/windows/testc.c +865 -869
- package/deps/jq/scripts/update-website +6 -5
- package/deps/jq/scripts/version +10 -7
- package/deps/jq/sig/jq-release-new.key +29 -0
- package/deps/jq/sig/v1.4/sha256sum.txt +1 -0
- package/deps/jq/sig/v1.5/sha256sum.txt +2 -0
- package/deps/jq/sig/v1.5rc1/sha256sum.txt +1 -0
- package/deps/jq/sig/v1.5rc2/sha256sum.txt +2 -0
- package/deps/jq/sig/v1.6/sha256sum.txt +2 -0
- package/deps/jq/sig/v1.7/jq-1.7.tar.gz.asc +16 -0
- package/deps/jq/sig/v1.7/jq-1.7.zip.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-amd64.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-arm64.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-armel.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-armhf.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-i386.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mips.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mips64.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mips64el.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mips64r6.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mips64r6el.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mipsel.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mipsr6.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-mipsr6el.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-powerpc.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-ppc64el.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-riscv64.asc +16 -0
- package/deps/jq/sig/v1.7/jq-linux-s390x.asc +16 -0
- package/deps/jq/sig/v1.7/jq-macos-amd64.asc +16 -0
- package/deps/jq/sig/v1.7/jq-macos-arm64.asc +16 -0
- package/deps/jq/sig/v1.7/jq-windows-amd64.exe.asc +16 -0
- package/deps/jq/sig/v1.7/jq-windows-i386.exe.asc +16 -0
- package/deps/jq/sig/v1.7/sha256sum.txt +23 -0
- package/deps/jq/sig/v1.7.1/jq-1.7.1.tar.gz.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-1.7.1.zip.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-amd64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-arm64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-armel.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-armhf.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-i386.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64r6.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64r6el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mipsel.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mipsr6.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mipsr6el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-powerpc.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-ppc64el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-riscv64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-s390x.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-macos-amd64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-macos-arm64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-osx-amd64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-win64.exe.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-windows-amd64.exe.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-windows-i386.exe.asc +16 -0
- package/deps/jq/sig/v1.7.1/sha256sum.txt +26 -0
- package/deps/jq/sig/v1.7rc1/jq-1.7rc1.tar.gz.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-1.7rc1.zip.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-amd64.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-arm64.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-armel.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-armhf.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-i386.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mips.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mips64.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mips64el.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mips64r6.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mips64r6el.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mipsel.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mipsr6.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-mipsr6el.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-powerpc.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-ppc64el.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-riscv64.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-linux-s390x.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-macos-amd64.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-macos-arm64.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-windows-amd64.exe.asc +16 -0
- package/deps/jq/sig/v1.7rc1/jq-windows-i386.exe.asc +16 -0
- package/deps/jq/sig/v1.7rc1/sha256sum.txt +23 -0
- package/deps/jq/sig/v1.7rc2/jq-1.7rc2.tar.gz.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-1.7rc2.zip.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-amd64.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-arm64.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-armel.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-armhf.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-i386.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mips.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mips64.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mips64el.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mips64r6.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mips64r6el.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mipsel.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mipsr6.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-mipsr6el.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-powerpc.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-ppc64el.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-riscv64.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-linux-s390x.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-macos-amd64.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-macos-arm64.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-windows-amd64.exe.asc +16 -0
- package/deps/jq/sig/v1.7rc2/jq-windows-i386.exe.asc +16 -0
- package/deps/jq/sig/v1.7rc2/sha256sum.txt +23 -0
- package/deps/jq/src/builtin.c +537 -343
- package/deps/jq/src/builtin.h +18 -0
- package/deps/jq/src/builtin.jq +116 -143
- package/deps/jq/src/bytecode.h +8 -4
- package/deps/jq/src/compile.c +157 -143
- package/deps/jq/src/compile.h +3 -4
- package/deps/jq/src/decNumber/ICU-license.html +45 -0
- package/deps/jq/src/decNumber/decBasic.c +3908 -0
- package/deps/jq/src/decNumber/decCommon.c +1835 -0
- package/deps/jq/src/decNumber/decContext.c +437 -0
- package/deps/jq/src/decNumber/decContext.h +254 -0
- package/deps/jq/src/decNumber/decDPD.h +1185 -0
- package/deps/jq/src/decNumber/decDouble.c +140 -0
- package/deps/jq/src/decNumber/decDouble.h +155 -0
- package/deps/jq/src/decNumber/decNumber.c +8143 -0
- package/deps/jq/src/decNumber/decNumber.h +182 -0
- package/deps/jq/src/decNumber/decNumberLocal.h +757 -0
- package/deps/jq/src/decNumber/decPacked.c +220 -0
- package/deps/jq/src/decNumber/decPacked.h +52 -0
- package/deps/jq/src/decNumber/decQuad.c +135 -0
- package/deps/jq/src/decNumber/decQuad.h +177 -0
- package/deps/jq/src/decNumber/decSingle.c +71 -0
- package/deps/jq/src/decNumber/decSingle.h +86 -0
- package/deps/jq/src/decNumber/decimal128.c +553 -0
- package/deps/jq/src/decNumber/decimal128.h +81 -0
- package/deps/jq/src/decNumber/decimal32.c +476 -0
- package/deps/jq/src/decNumber/decimal32.h +81 -0
- package/deps/jq/src/decNumber/decimal64.c +839 -0
- package/deps/jq/src/decNumber/decimal64.h +83 -0
- package/deps/jq/src/decNumber/decnumber.pdf +0 -0
- package/deps/jq/src/decNumber/example1.c +38 -0
- package/deps/jq/src/decNumber/example2.c +52 -0
- package/deps/jq/src/decNumber/example3.c +64 -0
- package/deps/jq/src/decNumber/example4.c +61 -0
- package/deps/jq/src/decNumber/example5.c +36 -0
- package/deps/jq/src/decNumber/example6.c +61 -0
- package/deps/jq/src/decNumber/example7.c +35 -0
- package/deps/jq/src/decNumber/example8.c +39 -0
- package/deps/jq/src/decNumber/readme.txt +81 -0
- package/deps/jq/src/exec_stack.h +5 -3
- package/deps/jq/src/execute.c +126 -44
- package/deps/jq/src/inject_errors.c +0 -2
- package/deps/jq/src/jq.h +10 -1
- package/deps/jq/src/jq_test.c +222 -11
- package/deps/jq/src/jv.c +807 -176
- package/deps/jq/src/jv.h +22 -1
- package/deps/jq/src/jv_alloc.c +33 -26
- package/deps/jq/src/jv_alloc.h +0 -11
- package/deps/jq/src/jv_aux.c +153 -67
- package/deps/jq/src/jv_dtoa.c +12 -2
- package/deps/jq/src/jv_dtoa_tsd.c +51 -0
- package/deps/jq/src/jv_dtoa_tsd.h +4 -0
- package/deps/jq/src/jv_parse.c +70 -15
- package/deps/jq/src/jv_print.c +56 -60
- package/deps/jq/src/jv_private.h +7 -0
- package/deps/jq/src/jv_thread.h +76 -0
- package/deps/jq/src/jv_unicode.c +18 -0
- package/deps/jq/src/jv_unicode.h +2 -0
- package/deps/jq/src/lexer.c +782 -543
- package/deps/jq/src/lexer.h +438 -64
- package/deps/jq/src/lexer.l +10 -3
- package/deps/jq/src/libm.h +16 -6
- package/deps/jq/src/linker.c +97 -40
- package/deps/jq/src/locfile.c +2 -1
- package/deps/jq/src/main.c +384 -336
- package/deps/jq/src/opcode_list.h +5 -2
- package/deps/jq/src/parser.c +2260 -1898
- package/deps/jq/src/parser.h +115 -98
- package/deps/jq/src/parser.y +124 -89
- package/deps/jq/src/util.c +854 -55
- package/deps/jq/src/util.h +6 -4
- package/deps/jq/tests/jq.test +762 -26
- package/deps/jq/tests/jq_fuzz_compile.c +27 -0
- package/deps/jq/tests/jq_fuzz_execute.cpp +42 -0
- package/deps/jq/tests/jq_fuzz_fixed.cpp +297 -0
- package/deps/jq/tests/jq_fuzz_load_file.c +28 -0
- package/deps/jq/tests/jq_fuzz_parse.c +21 -0
- package/deps/jq/tests/jq_fuzz_parse_extended.c +36 -0
- package/deps/jq/tests/jq_fuzz_parse_stream.c +21 -0
- package/deps/jq/tests/local.supp +14 -0
- package/deps/jq/tests/man.test +979 -0
- package/deps/jq/tests/manonig.test +76 -0
- package/deps/jq/tests/manonigtest +5 -0
- package/deps/jq/tests/mantest +1 -2
- package/deps/jq/tests/modules/home2/.jq/g.jq +1 -0
- package/deps/jq/tests/modules/shadow1.jq +2 -0
- package/deps/jq/tests/modules/shadow2.jq +1 -0
- package/deps/jq/tests/modules/test_bind_order0.jq +1 -0
- package/deps/jq/tests/modules/test_bind_order1.jq +1 -1
- package/deps/jq/tests/modules/test_bind_order2.jq +0 -1
- package/deps/jq/tests/no-main-program.jq +1 -0
- package/deps/jq/tests/onig.test +77 -2
- package/deps/jq/tests/setup +7 -2
- package/deps/jq/tests/shtest +478 -59
- package/deps/jq/tests/uri.test +38 -0
- package/deps/jq/tests/uritest +5 -0
- package/deps/jq/tests/yes-main-program.jq +2 -0
- package/lib/index.js +3 -0
- package/lib/jq.js +15 -1
- package/lib/templateAsync.js +137 -0
- package/package.json +7 -7
- package/src/binding.cc +623 -146
- package/src/binding.h +3 -4
- package/test/santiy-async.test.js +171 -0
- package/test/santiy.test.js +2 -2
- package/test/template-async.test.js +182 -0
- package/test/template.test.js +3 -3
- package/deps/jq/.travis.yml +0 -202
- package/deps/jq/NEWS +0 -89
- package/deps/jq/appveyor.yml +0 -53
- package/deps/jq/docs/Gemfile +0 -7
- package/deps/jq/docs/Gemfile.lock +0 -63
- package/deps/jq/docs/Rakefile +0 -24
- package/deps/jq/docs/Rakefile.manual +0 -49
- package/deps/jq/docs/Rakefile.website +0 -76
- package/deps/jq/docs/content/1.tutorial/default.yml +0 -327
- package/deps/jq/docs/content/2.download/default.yml +0 -193
- package/deps/jq/docs/content/index/index.yml +0 -73
- package/deps/jq/docs/public/css/base.scss +0 -181
- package/deps/jq/docs/public/jq.png +0 -0
- package/deps/jq/docs/site.yml +0 -9
- package/deps/jq/docs/templates/default.liquid +0 -34
- package/deps/jq/docs/templates/index.liquid +0 -73
- package/deps/jq/docs/templates/manual.liquid +0 -99
- package/deps/jq/docs/templates/shared/_footer.liquid +0 -10
- package/deps/jq/docs/templates/shared/_head.liquid +0 -17
- package/deps/jq/docs/templates/shared/_navbar.liquid +0 -27
- package/deps/jq/modules/oniguruma/README.ja +0 -195
- package/deps/jq/modules/oniguruma/cmake/dist.cmake +0 -321
- package/deps/jq/modules/oniguruma/contributed/libfuzzer-onig.cpp +0 -31
- package/deps/jq/modules/oniguruma/dist.info +0 -10
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_fold1_key.c +0 -2250
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_fold2_key.c +0 -203
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_fold3_key.c +0 -113
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_fold_data.c +0 -1225
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_property_data.c +0 -24742
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_property_data_posix.c +0 -4846
- package/deps/jq/modules/oniguruma/src/unicode-7.0/unicode_unfold_key.c +0 -2571
- /package/deps/jq/sig/{jq-release.key → jq-release-old.key} +0 -0
- /package/deps/jq/tests/modules/{.jq → home1/.jq} +0 -0
package/deps/jq/src/parser.h
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
/* A Bison parser, made by GNU Bison 3.
|
|
1
|
+
/* A Bison parser, made by GNU Bison 3.8.2. */
|
|
2
2
|
|
|
3
3
|
/* Bison interface for Yacc-like parsers in C
|
|
4
4
|
|
|
5
|
-
Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation,
|
|
5
|
+
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
|
|
6
|
+
Inc.
|
|
6
7
|
|
|
7
8
|
This program is free software: you can redistribute it and/or modify
|
|
8
9
|
it under the terms of the GNU General Public License as published by
|
|
@@ -15,7 +16,7 @@
|
|
|
15
16
|
GNU General Public License for more details.
|
|
16
17
|
|
|
17
18
|
You should have received a copy of the GNU General Public License
|
|
18
|
-
along with this program. If not, see <
|
|
19
|
+
along with this program. If not, see <https://www.gnu.org/licenses/>. */
|
|
19
20
|
|
|
20
21
|
/* As a special exception, you may create a larger work that contains
|
|
21
22
|
part or all of the Bison parser skeleton and distribute that work
|
|
@@ -30,6 +31,10 @@
|
|
|
30
31
|
This special exception was added by the Free Software Foundation in
|
|
31
32
|
version 2.2 of Bison. */
|
|
32
33
|
|
|
34
|
+
/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
|
|
35
|
+
especially those whose name start with YY_ or yy_. They are
|
|
36
|
+
private implementation details that can be changed or removed. */
|
|
37
|
+
|
|
33
38
|
#ifndef YY_YY_SRC_PARSER_H_INCLUDED
|
|
34
39
|
# define YY_YY_SRC_PARSER_H_INCLUDED
|
|
35
40
|
/* Debug traces. */
|
|
@@ -40,7 +45,7 @@
|
|
|
40
45
|
extern int yydebug;
|
|
41
46
|
#endif
|
|
42
47
|
/* "%code requires" blocks. */
|
|
43
|
-
#line
|
|
48
|
+
#line 12 "src/parser.y"
|
|
44
49
|
|
|
45
50
|
#include "locfile.h"
|
|
46
51
|
struct lexer_param;
|
|
@@ -57,120 +62,130 @@ struct lexer_param;
|
|
|
57
62
|
} \
|
|
58
63
|
} while (0)
|
|
59
64
|
|
|
60
|
-
#line
|
|
65
|
+
#line 66 "src/parser.h"
|
|
61
66
|
|
|
62
|
-
/* Token
|
|
67
|
+
/* Token kinds. */
|
|
63
68
|
#ifndef YYTOKENTYPE
|
|
64
69
|
# define YYTOKENTYPE
|
|
65
70
|
enum yytokentype
|
|
66
71
|
{
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
72
|
+
YYEMPTY = -2,
|
|
73
|
+
YYEOF = 0, /* "end of file" */
|
|
74
|
+
YYerror = 256, /* error */
|
|
75
|
+
YYUNDEF = 257, /* "invalid token" */
|
|
76
|
+
INVALID_CHARACTER = 258, /* INVALID_CHARACTER */
|
|
77
|
+
IDENT = 259, /* IDENT */
|
|
78
|
+
FIELD = 260, /* FIELD */
|
|
79
|
+
BINDING = 261, /* BINDING */
|
|
80
|
+
LITERAL = 262, /* LITERAL */
|
|
81
|
+
FORMAT = 263, /* FORMAT */
|
|
82
|
+
REC = 264, /* ".." */
|
|
83
|
+
SETMOD = 265, /* "%=" */
|
|
84
|
+
EQ = 266, /* "==" */
|
|
85
|
+
NEQ = 267, /* "!=" */
|
|
86
|
+
DEFINEDOR = 268, /* "//" */
|
|
87
|
+
AS = 269, /* "as" */
|
|
88
|
+
DEF = 270, /* "def" */
|
|
89
|
+
MODULE = 271, /* "module" */
|
|
90
|
+
IMPORT = 272, /* "import" */
|
|
91
|
+
INCLUDE = 273, /* "include" */
|
|
92
|
+
IF = 274, /* "if" */
|
|
93
|
+
THEN = 275, /* "then" */
|
|
94
|
+
ELSE = 276, /* "else" */
|
|
95
|
+
ELSE_IF = 277, /* "elif" */
|
|
96
|
+
REDUCE = 278, /* "reduce" */
|
|
97
|
+
FOREACH = 279, /* "foreach" */
|
|
98
|
+
END = 280, /* "end" */
|
|
99
|
+
AND = 281, /* "and" */
|
|
100
|
+
OR = 282, /* "or" */
|
|
101
|
+
TRY = 283, /* "try" */
|
|
102
|
+
CATCH = 284, /* "catch" */
|
|
103
|
+
LABEL = 285, /* "label" */
|
|
104
|
+
BREAK = 286, /* "break" */
|
|
105
|
+
LOC = 287, /* "$__loc__" */
|
|
106
|
+
SETPIPE = 288, /* "|=" */
|
|
107
|
+
SETPLUS = 289, /* "+=" */
|
|
108
|
+
SETMINUS = 290, /* "-=" */
|
|
109
|
+
SETMULT = 291, /* "*=" */
|
|
110
|
+
SETDIV = 292, /* "/=" */
|
|
111
|
+
SETDEFINEDOR = 293, /* "//=" */
|
|
112
|
+
LESSEQ = 294, /* "<=" */
|
|
113
|
+
GREATEREQ = 295, /* ">=" */
|
|
114
|
+
ALTERNATION = 296, /* "?//" */
|
|
115
|
+
QQSTRING_START = 297, /* QQSTRING_START */
|
|
116
|
+
QQSTRING_TEXT = 298, /* QQSTRING_TEXT */
|
|
117
|
+
QQSTRING_INTERP_START = 299, /* QQSTRING_INTERP_START */
|
|
118
|
+
QQSTRING_INTERP_END = 300, /* QQSTRING_INTERP_END */
|
|
119
|
+
QQSTRING_END = 301, /* QQSTRING_END */
|
|
120
|
+
FUNCDEF = 302, /* FUNCDEF */
|
|
121
|
+
NONOPT = 303 /* NONOPT */
|
|
112
122
|
};
|
|
123
|
+
typedef enum yytokentype yytoken_kind_t;
|
|
113
124
|
#endif
|
|
114
|
-
/*
|
|
125
|
+
/* Token kinds. */
|
|
126
|
+
#define YYEMPTY -2
|
|
127
|
+
#define YYEOF 0
|
|
128
|
+
#define YYerror 256
|
|
129
|
+
#define YYUNDEF 257
|
|
115
130
|
#define INVALID_CHARACTER 258
|
|
116
131
|
#define IDENT 259
|
|
117
132
|
#define FIELD 260
|
|
118
|
-
#define
|
|
119
|
-
#define
|
|
120
|
-
#define
|
|
121
|
-
#define
|
|
122
|
-
#define
|
|
123
|
-
#define
|
|
124
|
-
#define
|
|
125
|
-
#define
|
|
126
|
-
#define
|
|
127
|
-
#define
|
|
128
|
-
#define
|
|
129
|
-
#define
|
|
130
|
-
#define
|
|
131
|
-
#define
|
|
132
|
-
#define
|
|
133
|
-
#define
|
|
134
|
-
#define
|
|
135
|
-
#define
|
|
136
|
-
#define
|
|
137
|
-
#define
|
|
138
|
-
#define
|
|
139
|
-
#define
|
|
140
|
-
#define
|
|
141
|
-
#define
|
|
142
|
-
#define
|
|
143
|
-
#define
|
|
144
|
-
#define
|
|
145
|
-
#define
|
|
146
|
-
#define
|
|
147
|
-
#define
|
|
148
|
-
#define
|
|
149
|
-
#define
|
|
150
|
-
#define
|
|
151
|
-
#define
|
|
152
|
-
#define
|
|
153
|
-
#define
|
|
154
|
-
#define
|
|
155
|
-
#define
|
|
156
|
-
#define
|
|
157
|
-
#define
|
|
158
|
-
#define
|
|
159
|
-
#define
|
|
133
|
+
#define BINDING 261
|
|
134
|
+
#define LITERAL 262
|
|
135
|
+
#define FORMAT 263
|
|
136
|
+
#define REC 264
|
|
137
|
+
#define SETMOD 265
|
|
138
|
+
#define EQ 266
|
|
139
|
+
#define NEQ 267
|
|
140
|
+
#define DEFINEDOR 268
|
|
141
|
+
#define AS 269
|
|
142
|
+
#define DEF 270
|
|
143
|
+
#define MODULE 271
|
|
144
|
+
#define IMPORT 272
|
|
145
|
+
#define INCLUDE 273
|
|
146
|
+
#define IF 274
|
|
147
|
+
#define THEN 275
|
|
148
|
+
#define ELSE 276
|
|
149
|
+
#define ELSE_IF 277
|
|
150
|
+
#define REDUCE 278
|
|
151
|
+
#define FOREACH 279
|
|
152
|
+
#define END 280
|
|
153
|
+
#define AND 281
|
|
154
|
+
#define OR 282
|
|
155
|
+
#define TRY 283
|
|
156
|
+
#define CATCH 284
|
|
157
|
+
#define LABEL 285
|
|
158
|
+
#define BREAK 286
|
|
159
|
+
#define LOC 287
|
|
160
|
+
#define SETPIPE 288
|
|
161
|
+
#define SETPLUS 289
|
|
162
|
+
#define SETMINUS 290
|
|
163
|
+
#define SETMULT 291
|
|
164
|
+
#define SETDIV 292
|
|
165
|
+
#define SETDEFINEDOR 293
|
|
166
|
+
#define LESSEQ 294
|
|
167
|
+
#define GREATEREQ 295
|
|
168
|
+
#define ALTERNATION 296
|
|
169
|
+
#define QQSTRING_START 297
|
|
170
|
+
#define QQSTRING_TEXT 298
|
|
171
|
+
#define QQSTRING_INTERP_START 299
|
|
172
|
+
#define QQSTRING_INTERP_END 300
|
|
173
|
+
#define QQSTRING_END 301
|
|
174
|
+
#define FUNCDEF 302
|
|
175
|
+
#define NONOPT 303
|
|
160
176
|
|
|
161
177
|
/* Value type. */
|
|
162
178
|
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
|
163
|
-
|
|
164
179
|
union YYSTYPE
|
|
165
180
|
{
|
|
166
|
-
#line
|
|
181
|
+
#line 32 "src/parser.y"
|
|
167
182
|
|
|
168
183
|
jv literal;
|
|
169
184
|
block blk;
|
|
170
185
|
|
|
171
|
-
#line
|
|
172
|
-
};
|
|
186
|
+
#line 187 "src/parser.h"
|
|
173
187
|
|
|
188
|
+
};
|
|
174
189
|
typedef union YYSTYPE YYSTYPE;
|
|
175
190
|
# define YYSTYPE_IS_TRIVIAL 1
|
|
176
191
|
# define YYSTYPE_IS_DECLARED 1
|
|
@@ -192,6 +207,8 @@ struct YYLTYPE
|
|
|
192
207
|
|
|
193
208
|
|
|
194
209
|
|
|
210
|
+
|
|
195
211
|
int yyparse (block* answer, int* errors, struct locfile* locations, struct lexer_param* lexer_param_ptr);
|
|
196
212
|
|
|
213
|
+
|
|
197
214
|
#endif /* !YY_YY_SRC_PARSER_H_INCLUDED */
|
package/deps/jq/src/parser.y
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
#include <string.h>
|
|
6
6
|
#include "compile.h"
|
|
7
7
|
#include "jv_alloc.h"
|
|
8
|
+
#include "builtin.h"
|
|
8
9
|
#define YYMALLOC jv_mem_alloc
|
|
9
10
|
#define YYFREE jv_mem_free
|
|
10
11
|
%}
|
|
@@ -26,7 +27,7 @@ struct lexer_param;
|
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
%locations
|
|
29
|
-
%error
|
|
30
|
+
%define parse.error verbose
|
|
30
31
|
%define api.pure
|
|
31
32
|
%union {
|
|
32
33
|
jv literal;
|
|
@@ -49,6 +50,7 @@ struct lexer_param;
|
|
|
49
50
|
%token INVALID_CHARACTER
|
|
50
51
|
%token <literal> IDENT
|
|
51
52
|
%token <literal> FIELD
|
|
53
|
+
%token <literal> BINDING
|
|
52
54
|
%token <literal> LITERAL
|
|
53
55
|
%token <literal> FORMAT
|
|
54
56
|
%token REC ".."
|
|
@@ -74,7 +76,7 @@ struct lexer_param;
|
|
|
74
76
|
%token CATCH "catch"
|
|
75
77
|
%token LABEL "label"
|
|
76
78
|
%token BREAK "break"
|
|
77
|
-
%token LOC "__loc__"
|
|
79
|
+
%token LOC "$__loc__"
|
|
78
80
|
%token SETPIPE "|="
|
|
79
81
|
%token SETPLUS "+="
|
|
80
82
|
%token SETMINUS "-="
|
|
@@ -121,6 +123,7 @@ struct lexer_param;
|
|
|
121
123
|
%type <blk> Param Params Arg Args
|
|
122
124
|
%type <blk> Patterns RepPatterns Pattern ArrayPats ObjPats ObjPat
|
|
123
125
|
%type <literal> Keyword
|
|
126
|
+
%type <literal> StringStart
|
|
124
127
|
%{
|
|
125
128
|
#include "lexer.h"
|
|
126
129
|
struct lexer_param {
|
|
@@ -172,7 +175,7 @@ static jv check_object_key(block k) {
|
|
|
172
175
|
char errbuf[15];
|
|
173
176
|
return jv_string_fmt("Cannot use %s (%s) as object key",
|
|
174
177
|
jv_kind_name(block_const_kind(k)),
|
|
175
|
-
jv_dump_string_trunc(
|
|
178
|
+
jv_dump_string_trunc(block_const(k), errbuf, sizeof(errbuf)));
|
|
176
179
|
}
|
|
177
180
|
return jv_invalid();
|
|
178
181
|
}
|
|
@@ -200,49 +203,31 @@ static block constant_fold(block a, block b, int op) {
|
|
|
200
203
|
if (!block_is_single(a) || !block_is_const(a) ||
|
|
201
204
|
!block_is_single(b) || !block_is_const(b))
|
|
202
205
|
return gen_noop();
|
|
203
|
-
if (op == '+') {
|
|
204
|
-
if (block_const_kind(a) == JV_KIND_NULL) {
|
|
205
|
-
block_free(a);
|
|
206
|
-
return b;
|
|
207
|
-
}
|
|
208
|
-
if (block_const_kind(b) == JV_KIND_NULL) {
|
|
209
|
-
block_free(b);
|
|
210
|
-
return a;
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
if (block_const_kind(a) != block_const_kind(b))
|
|
214
|
-
return gen_noop();
|
|
215
206
|
|
|
216
|
-
jv
|
|
207
|
+
jv jv_a = block_const(a);
|
|
208
|
+
block_free(a);
|
|
209
|
+
jv jv_b = block_const(b);
|
|
210
|
+
block_free(b);
|
|
217
211
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
case GREATEREQ: res = (na >= nb ? jv_true() : jv_false()); break;
|
|
232
|
-
default: break;
|
|
233
|
-
}
|
|
234
|
-
} else if (op == '+' && block_const_kind(a) == JV_KIND_STRING) {
|
|
235
|
-
res = jv_string_concat(block_const(a), block_const(b));
|
|
236
|
-
} else {
|
|
237
|
-
return gen_noop();
|
|
212
|
+
jv res = jv_invalid();
|
|
213
|
+
switch (op) {
|
|
214
|
+
case '+': res = binop_plus(jv_a, jv_b); break;
|
|
215
|
+
case '-': res = binop_minus(jv_a, jv_b); break;
|
|
216
|
+
case '*': res = binop_multiply(jv_a, jv_b); break;
|
|
217
|
+
case '/': res = binop_divide(jv_a, jv_b); break;
|
|
218
|
+
case '%': res = binop_mod(jv_a, jv_b); break;
|
|
219
|
+
case EQ: res = binop_equal(jv_a, jv_b); break;
|
|
220
|
+
case NEQ: res = binop_notequal(jv_a, jv_b); break;
|
|
221
|
+
case '<': res = binop_less(jv_a, jv_b); break;
|
|
222
|
+
case '>': res = binop_greater(jv_a, jv_b); break;
|
|
223
|
+
case LESSEQ: res = binop_lesseq(jv_a, jv_b); break;
|
|
224
|
+
case GREATEREQ: res = binop_greatereq(jv_a, jv_b); break;
|
|
238
225
|
}
|
|
239
226
|
|
|
240
|
-
if (
|
|
241
|
-
return
|
|
227
|
+
if (jv_is_valid(res))
|
|
228
|
+
return gen_const(res);
|
|
242
229
|
|
|
243
|
-
|
|
244
|
-
block_free(b);
|
|
245
|
-
return gen_const(res);
|
|
230
|
+
return gen_error(jv_invalid_get_msg(res));
|
|
246
231
|
}
|
|
247
232
|
|
|
248
233
|
static block gen_binop(block a, block b, int op) {
|
|
@@ -293,6 +278,11 @@ static block gen_update(block object, block val, int optype) {
|
|
|
293
278
|
optype)))));
|
|
294
279
|
}
|
|
295
280
|
|
|
281
|
+
static block gen_loc_object(location *loc, struct locfile *locations) {
|
|
282
|
+
return gen_const(JV_OBJECT(jv_string("file"), jv_copy(locations->fname),
|
|
283
|
+
jv_string("line"), jv_number(locfile_get_line(locations, loc->start) + 1)));
|
|
284
|
+
}
|
|
285
|
+
|
|
296
286
|
%}
|
|
297
287
|
|
|
298
288
|
%%
|
|
@@ -313,6 +303,10 @@ Module:
|
|
|
313
303
|
FAIL(@$, "Module metadata must be constant");
|
|
314
304
|
$$ = gen_noop();
|
|
315
305
|
block_free($2);
|
|
306
|
+
} else if (block_const_kind($2) != JV_KIND_OBJECT) {
|
|
307
|
+
FAIL(@$, "Module metadata must be an object");
|
|
308
|
+
$$ = gen_noop();
|
|
309
|
+
block_free($2);
|
|
316
310
|
} else {
|
|
317
311
|
$$ = gen_module($2);
|
|
318
312
|
}
|
|
@@ -331,7 +325,7 @@ FuncDefs:
|
|
|
331
325
|
$$ = gen_noop();
|
|
332
326
|
} |
|
|
333
327
|
FuncDef FuncDefs {
|
|
334
|
-
$$ =
|
|
328
|
+
$$ = block_join($1, $2);
|
|
335
329
|
}
|
|
336
330
|
|
|
337
331
|
Exp:
|
|
@@ -363,11 +357,9 @@ Term "as" Patterns '|' Exp {
|
|
|
363
357
|
} |
|
|
364
358
|
|
|
365
359
|
"try" Exp "catch" Exp {
|
|
366
|
-
|
|
367
|
-
$$ = gen_try($2, gen_try_handler($4));
|
|
360
|
+
$$ = gen_try($2, $4);
|
|
368
361
|
} |
|
|
369
362
|
"try" Exp {
|
|
370
|
-
//$$ = BLOCK(gen_op_target(FORK_OPT, $2), $2, gen_op_simple(BACKTRACK));
|
|
371
363
|
$$ = gen_try($2, gen_op_simple(BACKTRACK));
|
|
372
364
|
} |
|
|
373
365
|
"try" Exp "catch" error {
|
|
@@ -375,10 +367,10 @@ Term "as" Patterns '|' Exp {
|
|
|
375
367
|
$$ = $2;
|
|
376
368
|
} |
|
|
377
369
|
|
|
378
|
-
"label"
|
|
379
|
-
jv v = jv_string_fmt("*label-%s", jv_string_value($
|
|
380
|
-
$$ = gen_location(@$, locations, gen_label(jv_string_value(v), $
|
|
381
|
-
jv_free($
|
|
370
|
+
"label" BINDING '|' Exp {
|
|
371
|
+
jv v = jv_string_fmt("*label-%s", jv_string_value($2));
|
|
372
|
+
$$ = gen_location(@$, locations, gen_label(jv_string_value(v), $4));
|
|
373
|
+
jv_free($2);
|
|
382
374
|
jv_free(v);
|
|
383
375
|
} |
|
|
384
376
|
|
|
@@ -448,14 +440,10 @@ Exp "*=" Exp {
|
|
|
448
440
|
|
|
449
441
|
Exp '/' Exp {
|
|
450
442
|
$$ = gen_binop($1, $3, '/');
|
|
451
|
-
if (block_is_const_inf($$))
|
|
452
|
-
FAIL(@$, "Division by zero?");
|
|
453
443
|
} |
|
|
454
444
|
|
|
455
445
|
Exp '%' Exp {
|
|
456
446
|
$$ = gen_binop($1, $3, '%');
|
|
457
|
-
if (block_is_const_inf($$))
|
|
458
|
-
FAIL(@$, "Remainder by zero?");
|
|
459
447
|
} |
|
|
460
448
|
|
|
461
449
|
Exp "/=" Exp {
|
|
@@ -515,13 +503,13 @@ ImportWhat Exp ';' {
|
|
|
515
503
|
}
|
|
516
504
|
|
|
517
505
|
ImportWhat:
|
|
518
|
-
"import" ImportFrom "as"
|
|
506
|
+
"import" ImportFrom "as" BINDING {
|
|
519
507
|
jv v = block_const($2);
|
|
520
508
|
// XXX Make gen_import take only blocks and the int is_data so we
|
|
521
509
|
// don't have to free so much stuff here
|
|
522
|
-
$$ = gen_import(jv_string_value(v), jv_string_value($
|
|
510
|
+
$$ = gen_import(jv_string_value(v), jv_string_value($4), 1);
|
|
523
511
|
block_free($2);
|
|
524
|
-
jv_free($
|
|
512
|
+
jv_free($4);
|
|
525
513
|
jv_free(v);
|
|
526
514
|
} |
|
|
527
515
|
"import" ImportFrom "as" IDENT {
|
|
@@ -569,28 +557,32 @@ Params ';' Param {
|
|
|
569
557
|
}
|
|
570
558
|
|
|
571
559
|
Param:
|
|
572
|
-
|
|
573
|
-
$$ = gen_param_regular(jv_string_value($
|
|
574
|
-
jv_free($
|
|
560
|
+
BINDING {
|
|
561
|
+
$$ = gen_param_regular(jv_string_value($1));
|
|
562
|
+
jv_free($1);
|
|
575
563
|
} |
|
|
576
|
-
|
|
577
564
|
IDENT {
|
|
578
565
|
$$ = gen_param(jv_string_value($1));
|
|
579
566
|
jv_free($1);
|
|
580
567
|
}
|
|
581
568
|
|
|
582
569
|
|
|
583
|
-
|
|
584
|
-
QQSTRING_START {
|
|
585
|
-
$$ = $
|
|
586
|
-
jv_free($<literal>2);
|
|
570
|
+
StringStart:
|
|
571
|
+
FORMAT QQSTRING_START {
|
|
572
|
+
$$ = $1;
|
|
587
573
|
} |
|
|
588
|
-
|
|
589
|
-
$$ =
|
|
590
|
-
jv_free($<literal>3);
|
|
574
|
+
QQSTRING_START {
|
|
575
|
+
$$ = jv_string("text");
|
|
591
576
|
}
|
|
592
577
|
|
|
593
578
|
|
|
579
|
+
String:
|
|
580
|
+
StringStart QQString QQSTRING_END {
|
|
581
|
+
$$ = $2;
|
|
582
|
+
jv_free($1);
|
|
583
|
+
};
|
|
584
|
+
|
|
585
|
+
|
|
594
586
|
QQString:
|
|
595
587
|
%empty {
|
|
596
588
|
$$ = gen_const(jv_string(""));
|
|
@@ -609,6 +601,9 @@ ElseBody:
|
|
|
609
601
|
} |
|
|
610
602
|
"else" Exp "end" {
|
|
611
603
|
$$ = $2;
|
|
604
|
+
} |
|
|
605
|
+
"end" {
|
|
606
|
+
$$ = gen_noop();
|
|
612
607
|
}
|
|
613
608
|
|
|
614
609
|
ExpD:
|
|
@@ -630,13 +625,13 @@ Term:
|
|
|
630
625
|
REC {
|
|
631
626
|
$$ = gen_call("recurse", gen_noop());
|
|
632
627
|
} |
|
|
633
|
-
BREAK
|
|
634
|
-
jv v = jv_string_fmt("*label-%s", jv_string_value($
|
|
628
|
+
BREAK BINDING {
|
|
629
|
+
jv v = jv_string_fmt("*label-%s", jv_string_value($2)); // impossible symbol
|
|
635
630
|
$$ = gen_location(@$, locations,
|
|
636
631
|
BLOCK(gen_op_unbound(LOADV, jv_string_value(v)),
|
|
637
632
|
gen_call("error", gen_noop())));
|
|
638
633
|
jv_free(v);
|
|
639
|
-
jv_free($
|
|
634
|
+
jv_free($2);
|
|
640
635
|
} |
|
|
641
636
|
BREAK error {
|
|
642
637
|
FAIL(@$, "break requires a label to break to");
|
|
@@ -682,12 +677,24 @@ Term '[' Exp ']' '?' {
|
|
|
682
677
|
Term '[' Exp ']' %prec NONOPT {
|
|
683
678
|
$$ = gen_index($1, $3);
|
|
684
679
|
} |
|
|
680
|
+
Term '.' '[' Exp ']' '?' {
|
|
681
|
+
$$ = gen_index_opt($1, $4);
|
|
682
|
+
} |
|
|
683
|
+
Term '.' '[' Exp ']' %prec NONOPT {
|
|
684
|
+
$$ = gen_index($1, $4);
|
|
685
|
+
} |
|
|
685
686
|
Term '[' ']' '?' {
|
|
686
687
|
$$ = block_join($1, gen_op_simple(EACH_OPT));
|
|
687
688
|
} |
|
|
688
689
|
Term '[' ']' %prec NONOPT {
|
|
689
690
|
$$ = block_join($1, gen_op_simple(EACH));
|
|
690
691
|
} |
|
|
692
|
+
Term '.' '[' ']' '?' {
|
|
693
|
+
$$ = block_join($1, gen_op_simple(EACH_OPT));
|
|
694
|
+
} |
|
|
695
|
+
Term '.' '[' ']' %prec NONOPT {
|
|
696
|
+
$$ = block_join($1, gen_op_simple(EACH));
|
|
697
|
+
} |
|
|
691
698
|
Term '[' Exp ':' Exp ']' '?' {
|
|
692
699
|
$$ = gen_slice_index($1, $3, $5, INDEX_OPT);
|
|
693
700
|
} |
|
|
@@ -731,13 +738,31 @@ FORMAT {
|
|
|
731
738
|
else
|
|
732
739
|
$$ = BLOCK(gen_subexp(gen_const(jv_object())), $2, gen_op_simple(POP));
|
|
733
740
|
} |
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
741
|
+
/*
|
|
742
|
+
* This `$$$$varname` hack is strictly private to jq builtins. DO NOT USE!!
|
|
743
|
+
*
|
|
744
|
+
* This is used in `_modify`, in src/builtin.jq, to avoid holding on to a
|
|
745
|
+
* reference to `.`.
|
|
746
|
+
*
|
|
747
|
+
* We could just have the compiler emit bytecode for `_modify` so it can use
|
|
748
|
+
* LOADVN w/o needing jq syntax for LOADVN.
|
|
749
|
+
*
|
|
750
|
+
* This syntax, `$$$$varname`, violates referential transparency: it has
|
|
751
|
+
* side-effects that are surprising.
|
|
752
|
+
*
|
|
753
|
+
* DO NOT USE!! I will break your jq code if you do use this outside
|
|
754
|
+
* src/builtin.jq.
|
|
755
|
+
*/
|
|
756
|
+
'$' '$' '$' BINDING {
|
|
757
|
+
$$ = gen_location(@$, locations, gen_op_unbound(LOADVN, jv_string_value($4)));
|
|
758
|
+
jv_free($4);
|
|
737
759
|
} |
|
|
738
|
-
|
|
739
|
-
$$ = gen_location(@$, locations, gen_op_unbound(LOADV, jv_string_value($
|
|
740
|
-
jv_free($
|
|
760
|
+
BINDING {
|
|
761
|
+
$$ = gen_location(@$, locations, gen_op_unbound(LOADV, jv_string_value($1)));
|
|
762
|
+
jv_free($1);
|
|
763
|
+
} |
|
|
764
|
+
"$__loc__" {
|
|
765
|
+
$$ = gen_loc_object(&@$, locations);
|
|
741
766
|
} |
|
|
742
767
|
IDENT {
|
|
743
768
|
const char *s = jv_string_value($1);
|
|
@@ -791,9 +816,9 @@ Pattern {
|
|
|
791
816
|
}
|
|
792
817
|
|
|
793
818
|
Pattern:
|
|
794
|
-
|
|
795
|
-
$$ = gen_op_unbound(STOREV, jv_string_value($
|
|
796
|
-
jv_free($
|
|
819
|
+
BINDING {
|
|
820
|
+
$$ = gen_op_unbound(STOREV, jv_string_value($1));
|
|
821
|
+
jv_free($1);
|
|
797
822
|
} |
|
|
798
823
|
'[' ArrayPats ']' {
|
|
799
824
|
$$ = BLOCK($2, gen_op_simple(POP));
|
|
@@ -819,11 +844,11 @@ ObjPats ',' ObjPat {
|
|
|
819
844
|
}
|
|
820
845
|
|
|
821
846
|
ObjPat:
|
|
822
|
-
|
|
823
|
-
$$ = gen_object_matcher(gen_const($
|
|
847
|
+
BINDING {
|
|
848
|
+
$$ = gen_object_matcher(gen_const($1), gen_op_unbound(STOREV, jv_string_value($1)));
|
|
824
849
|
} |
|
|
825
|
-
|
|
826
|
-
$$ = gen_object_matcher(gen_const($
|
|
850
|
+
BINDING ':' Pattern {
|
|
851
|
+
$$ = gen_object_matcher(gen_const($1), BLOCK(gen_op_simple(DUP), gen_op_unbound(STOREV, jv_string_value($1)), $3));
|
|
827
852
|
} |
|
|
828
853
|
IDENT ':' Pattern {
|
|
829
854
|
$$ = gen_object_matcher(gen_const($1), $3);
|
|
@@ -901,9 +926,6 @@ Keyword:
|
|
|
901
926
|
} |
|
|
902
927
|
"break" {
|
|
903
928
|
$$ = jv_string("break");
|
|
904
|
-
} |
|
|
905
|
-
"__loc__" {
|
|
906
|
-
$$ = jv_string("__loc__");
|
|
907
929
|
}
|
|
908
930
|
|
|
909
931
|
MkDict:
|
|
@@ -928,14 +950,27 @@ IDENT ':' ExpD {
|
|
|
928
950
|
$$ = gen_dictpair($1, BLOCK(gen_op_simple(POP), gen_op_simple(DUP2),
|
|
929
951
|
gen_op_simple(DUP2), gen_op_simple(INDEX)));
|
|
930
952
|
}
|
|
931
|
-
| '
|
|
932
|
-
$$ = gen_dictpair(
|
|
933
|
-
|
|
953
|
+
| BINDING ':' ExpD {
|
|
954
|
+
$$ = gen_dictpair(gen_location(@$, locations, gen_op_unbound(LOADV, jv_string_value($1))),
|
|
955
|
+
$3);
|
|
956
|
+
jv_free($1);
|
|
957
|
+
}
|
|
958
|
+
| BINDING {
|
|
959
|
+
$$ = gen_dictpair(gen_const($1),
|
|
960
|
+
gen_location(@$, locations, gen_op_unbound(LOADV, jv_string_value($1))));
|
|
934
961
|
}
|
|
935
962
|
| IDENT {
|
|
936
963
|
$$ = gen_dictpair(gen_const(jv_copy($1)),
|
|
937
964
|
gen_index(gen_noop(), gen_const($1)));
|
|
938
965
|
}
|
|
966
|
+
| "$__loc__" {
|
|
967
|
+
$$ = gen_dictpair(gen_const(jv_string("__loc__")),
|
|
968
|
+
gen_loc_object(&@$, locations));
|
|
969
|
+
}
|
|
970
|
+
| Keyword {
|
|
971
|
+
$$ = gen_dictpair(gen_const(jv_copy($1)),
|
|
972
|
+
gen_index(gen_noop(), gen_const($1)));
|
|
973
|
+
}
|
|
939
974
|
| '(' Exp ')' ':' ExpD {
|
|
940
975
|
jv msg = check_object_key($2);
|
|
941
976
|
if (jv_is_valid(msg)) {
|