just-binary 2.9.8
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/LICENSE +201 -0
- package/README.md +458 -0
- package/dist/AGENTS.md +323 -0
- package/dist/Bash.d.ts +179 -0
- package/dist/ast/types.d.ts +615 -0
- package/dist/banned-patterns-test.d.ts +8 -0
- package/dist/bin/chunks/alias-23G4Q2RS.js +2 -0
- package/dist/bin/chunks/awk2-Z6VRXKAK.js +2 -0
- package/dist/bin/chunks/base64-DNX4WCIO.js +2 -0
- package/dist/bin/chunks/basename-MPQ7M4RF.js +2 -0
- package/dist/bin/chunks/bash-OQ32Y5I6.js +2 -0
- package/dist/bin/chunks/bytes-6YUZMX3P.js +2 -0
- package/dist/bin/chunks/cat-CL5ISR5P.js +2 -0
- package/dist/bin/chunks/chmod-R6IWRSKZ.js +2 -0
- package/dist/bin/chunks/chunk-227L3ACM.js +23 -0
- package/dist/bin/chunks/chunk-2QA4P6HI.js +12 -0
- package/dist/bin/chunks/chunk-3MFM4GSH.js +36 -0
- package/dist/bin/chunks/chunk-3UP5LXDO.js +3 -0
- package/dist/bin/chunks/chunk-47P7JSQI.js +2 -0
- package/dist/bin/chunks/chunk-4KBTPDQB.js +3 -0
- package/dist/bin/chunks/chunk-4UK2MV3F.js +13 -0
- package/dist/bin/chunks/chunk-4VDEBYW7.js +2 -0
- package/dist/bin/chunks/chunk-563AO4OL.js +7 -0
- package/dist/bin/chunks/chunk-5HDWUXRX.js +7 -0
- package/dist/bin/chunks/chunk-5MCFI6LE.js +5 -0
- package/dist/bin/chunks/chunk-6CZOPIZD.js +6 -0
- package/dist/bin/chunks/chunk-6FNFX5GG.js +5 -0
- package/dist/bin/chunks/chunk-6NYIHYDY.js +7 -0
- package/dist/bin/chunks/chunk-6Y4TKR73.js +16 -0
- package/dist/bin/chunks/chunk-7C7WEK46.js +23 -0
- package/dist/bin/chunks/chunk-7TNGQWY6.js +6 -0
- package/dist/bin/chunks/chunk-7UAWRBQS.js +9 -0
- package/dist/bin/chunks/chunk-ARGU3OIG.js +17 -0
- package/dist/bin/chunks/chunk-BA3A5BYZ.js +3 -0
- package/dist/bin/chunks/chunk-BB7T22CF.js +140 -0
- package/dist/bin/chunks/chunk-BY24LKGP.js +8 -0
- package/dist/bin/chunks/chunk-CRHN4WNQ.js +63 -0
- package/dist/bin/chunks/chunk-ELZHJGI7.js +10 -0
- package/dist/bin/chunks/chunk-F46CSMUF.js +2 -0
- package/dist/bin/chunks/chunk-FQX4G5RH.js +7 -0
- package/dist/bin/chunks/chunk-G43H2WGH.js +17 -0
- package/dist/bin/chunks/chunk-GIFF636B.js +2 -0
- package/dist/bin/chunks/chunk-GMJWC3MC.js +12 -0
- package/dist/bin/chunks/chunk-HVDU57EV.js +16 -0
- package/dist/bin/chunks/chunk-HWGK3XW7.js +6 -0
- package/dist/bin/chunks/chunk-HYR7G7KS.js +3 -0
- package/dist/bin/chunks/chunk-I2225JSU.js +14 -0
- package/dist/bin/chunks/chunk-I2FUQZXU.js +11 -0
- package/dist/bin/chunks/chunk-IBHPKKIT.js +10 -0
- package/dist/bin/chunks/chunk-IKNNFJNZ.js +14 -0
- package/dist/bin/chunks/chunk-INPUJM7Y.js +8 -0
- package/dist/bin/chunks/chunk-IOBKPMWJ.js +9 -0
- package/dist/bin/chunks/chunk-IYSA2L6A.js +13 -0
- package/dist/bin/chunks/chunk-JMLNX7GE.js +287 -0
- package/dist/bin/chunks/chunk-K2K4KPOQ.js +3 -0
- package/dist/bin/chunks/chunk-K6DD7NH3.js +9 -0
- package/dist/bin/chunks/chunk-KFLJ4EMB.js +4 -0
- package/dist/bin/chunks/chunk-KOMDAXHM.js +7 -0
- package/dist/bin/chunks/chunk-KV7ZTM2R.js +11 -0
- package/dist/bin/chunks/chunk-LCCVVEJA.js +10 -0
- package/dist/bin/chunks/chunk-LUPJK5US.js +84 -0
- package/dist/bin/chunks/chunk-LWF3XDOC.js +32 -0
- package/dist/bin/chunks/chunk-LXNARM2C.js +9 -0
- package/dist/bin/chunks/chunk-LXZS3X5T.js +9 -0
- package/dist/bin/chunks/chunk-M4ICSCXT.js +100 -0
- package/dist/bin/chunks/chunk-MEBZXRGE.js +5 -0
- package/dist/bin/chunks/chunk-MSPSS36S.js +16 -0
- package/dist/bin/chunks/chunk-N335RIGZ.js +20 -0
- package/dist/bin/chunks/chunk-N5KGQWJH.js +5 -0
- package/dist/bin/chunks/chunk-NDHTQE5T.js +8 -0
- package/dist/bin/chunks/chunk-NF5G7X3O.js +7 -0
- package/dist/bin/chunks/chunk-NGKNJ6V2.js +11 -0
- package/dist/bin/chunks/chunk-OBH7XN5N.js +1 -0
- package/dist/bin/chunks/chunk-OKQ6RACF.js +73 -0
- package/dist/bin/chunks/chunk-PBY7XGZ6.js +8 -0
- package/dist/bin/chunks/chunk-PHHNNFRS.js +6 -0
- package/dist/bin/chunks/chunk-PO6Y7TWQ.js +6 -0
- package/dist/bin/chunks/chunk-Q4TLKLIZ.js +12 -0
- package/dist/bin/chunks/chunk-QS6LP3E3.js +6 -0
- package/dist/bin/chunks/chunk-QT2GMJRJ.js +8 -0
- package/dist/bin/chunks/chunk-QUVW3R4I.js +5 -0
- package/dist/bin/chunks/chunk-QUYWT2TY.js +21 -0
- package/dist/bin/chunks/chunk-QWUII542.js +2 -0
- package/dist/bin/chunks/chunk-R5EQDD5Y.js +13 -0
- package/dist/bin/chunks/chunk-RQSPCXDR.js +2 -0
- package/dist/bin/chunks/chunk-RTC6C5QW.js +2 -0
- package/dist/bin/chunks/chunk-S5W2KVHC.js +2 -0
- package/dist/bin/chunks/chunk-SDXDICI4.js +2 -0
- package/dist/bin/chunks/chunk-SE4C7FJY.js +33 -0
- package/dist/bin/chunks/chunk-SX7TI7Q2.js +3 -0
- package/dist/bin/chunks/chunk-TDJ55L4A.js +16 -0
- package/dist/bin/chunks/chunk-TNPUAMV3.js +8 -0
- package/dist/bin/chunks/chunk-TSGSFBQI.js +14 -0
- package/dist/bin/chunks/chunk-U5ZE562V.js +2 -0
- package/dist/bin/chunks/chunk-UIMH6I3G.js +33 -0
- package/dist/bin/chunks/chunk-UXPY5T2P.js +9 -0
- package/dist/bin/chunks/chunk-UYBH3FNE.js +2 -0
- package/dist/bin/chunks/chunk-V5I6PHN2.js +14 -0
- package/dist/bin/chunks/chunk-VOTJNR36.js +5 -0
- package/dist/bin/chunks/chunk-W5XFREQC.js +3 -0
- package/dist/bin/chunks/chunk-X2MOXVGO.js +26 -0
- package/dist/bin/chunks/chunk-XOGQUO62.js +2 -0
- package/dist/bin/chunks/chunk-Y57BDPQ5.js +6 -0
- package/dist/bin/chunks/chunk-YE6KXFFU.js +2 -0
- package/dist/bin/chunks/chunk-YEPWKN4F.js +3 -0
- package/dist/bin/chunks/chunk-ZEDWVSUZ.js +19 -0
- package/dist/bin/chunks/chunk-ZI4TTZL5.js +21 -0
- package/dist/bin/chunks/chunk-ZZVIGHYS.js +7 -0
- package/dist/bin/chunks/clear-27OP2FQZ.js +2 -0
- package/dist/bin/chunks/column-FJNKONCJ.js +2 -0
- package/dist/bin/chunks/comm-5FNEJE7X.js +2 -0
- package/dist/bin/chunks/cp-LVKHKFHQ.js +2 -0
- package/dist/bin/chunks/curl-S4FJSZA5.js +26 -0
- package/dist/bin/chunks/cut-UXU6PNTT.js +2 -0
- package/dist/bin/chunks/date-GGPTXVUT.js +2 -0
- package/dist/bin/chunks/diff-3V3FOITV.js +2 -0
- package/dist/bin/chunks/dirname-455JDV2M.js +2 -0
- package/dist/bin/chunks/du-WUEAQO2W.js +2 -0
- package/dist/bin/chunks/echo-HBXOI5TQ.js +2 -0
- package/dist/bin/chunks/env-MXFHTVHS.js +2 -0
- package/dist/bin/chunks/expand-F4FM4ML2.js +2 -0
- package/dist/bin/chunks/expansion-7AYBVOIQ.js +2 -0
- package/dist/bin/chunks/expr-5ZKR5ER5.js +2 -0
- package/dist/bin/chunks/file-BFN7BKUR.js +2 -0
- package/dist/bin/chunks/find-W4BCEJEC.js +2 -0
- package/dist/bin/chunks/flag-coverage-DBKGNLJO.js +2 -0
- package/dist/bin/chunks/fold-AE57YLOS.js +2 -0
- package/dist/bin/chunks/grep-I63BWUKL.js +2 -0
- package/dist/bin/chunks/gzip-X5IDXWZE.js +2 -0
- package/dist/bin/chunks/head-TBQETLQX.js +2 -0
- package/dist/bin/chunks/help-HGMKZ2GW.js +2 -0
- package/dist/bin/chunks/history-2DYRIL3U.js +2 -0
- package/dist/bin/chunks/hostname-RWEPTCXH.js +2 -0
- package/dist/bin/chunks/html-to-markdown-2VQWCEKU.js +2 -0
- package/dist/bin/chunks/join-TRRWQBEU.js +2 -0
- package/dist/bin/chunks/jq-NFKKH27D.js +2 -0
- package/dist/bin/chunks/ln-BSEVUP2J.js +2 -0
- package/dist/bin/chunks/ls-IJLTWVOI.js +2 -0
- package/dist/bin/chunks/md5sum-ZIQHOC4K.js +2 -0
- package/dist/bin/chunks/mkdir-KYFAO2SF.js +2 -0
- package/dist/bin/chunks/mv-TWM2PA7Q.js +2 -0
- package/dist/bin/chunks/nl-XLF2HFST.js +2 -0
- package/dist/bin/chunks/od-BOM6JPTH.js +2 -0
- package/dist/bin/chunks/paste-FUGXVGJX.js +2 -0
- package/dist/bin/chunks/printf-XUGNJ3QM.js +2 -0
- package/dist/bin/chunks/pwd-RZG6GZEU.js +2 -0
- package/dist/bin/chunks/python3-PIXJS3YM.js +14 -0
- package/dist/bin/chunks/readlink-4SOSIDHE.js +2 -0
- package/dist/bin/chunks/rev-5E5UGSUZ.js +2 -0
- package/dist/bin/chunks/rg-4YJSQZN7.js +2 -0
- package/dist/bin/chunks/rm-3PFOF4E3.js +2 -0
- package/dist/bin/chunks/rmdir-CSK7CGH5.js +2 -0
- package/dist/bin/chunks/sed-XBCUZMEP.js +2 -0
- package/dist/bin/chunks/seq-H7ID4VMK.js +2 -0
- package/dist/bin/chunks/sha1sum-EDQNYXXH.js +2 -0
- package/dist/bin/chunks/sha256sum-APTG6DO2.js +2 -0
- package/dist/bin/chunks/sleep-PNT7KILS.js +2 -0
- package/dist/bin/chunks/sort-ELAGZUES.js +2 -0
- package/dist/bin/chunks/split-QGXYUWBC.js +2 -0
- package/dist/bin/chunks/sqlite3-ELLMKNNJ.js +2 -0
- package/dist/bin/chunks/stat-Q2TZRKO3.js +2 -0
- package/dist/bin/chunks/strings-IGEGP5QX.js +2 -0
- package/dist/bin/chunks/tac-VOEDJLLG.js +2 -0
- package/dist/bin/chunks/tail-JOQASWMV.js +2 -0
- package/dist/bin/chunks/tar-2UVSVD3P.js +2 -0
- package/dist/bin/chunks/tee-IQLEDZOQ.js +2 -0
- package/dist/bin/chunks/time-VRCJK2LI.js +2 -0
- package/dist/bin/chunks/timeout-A36YWZWR.js +2 -0
- package/dist/bin/chunks/touch-5ECNQNBP.js +2 -0
- package/dist/bin/chunks/tr-AVALLN54.js +2 -0
- package/dist/bin/chunks/tree-UFM5EDXS.js +2 -0
- package/dist/bin/chunks/true-BU5JSAAW.js +2 -0
- package/dist/bin/chunks/unexpand-TDRWZW5F.js +2 -0
- package/dist/bin/chunks/uniq-IKBUNAMN.js +2 -0
- package/dist/bin/chunks/wc-2R4RS2SX.js +2 -0
- package/dist/bin/chunks/which-6UVGMXDF.js +2 -0
- package/dist/bin/chunks/whoami-N6TLTETT.js +2 -0
- package/dist/bin/chunks/worker.js +2260 -0
- package/dist/bin/chunks/xan-JX5QUK32.js +2 -0
- package/dist/bin/chunks/xan-view-NFMUMJ7Z.js +2 -0
- package/dist/bin/chunks/xargs-4MYN4U3C.js +2 -0
- package/dist/bin/chunks/yq-EHDQVD7S.js +2 -0
- package/dist/bin/just-bash.js +732 -0
- package/dist/bin/shell/chunks/alias-23G4Q2RS.js +2 -0
- package/dist/bin/shell/chunks/awk2-Z6VRXKAK.js +2 -0
- package/dist/bin/shell/chunks/base64-DNX4WCIO.js +2 -0
- package/dist/bin/shell/chunks/basename-MPQ7M4RF.js +2 -0
- package/dist/bin/shell/chunks/bash-OQ32Y5I6.js +2 -0
- package/dist/bin/shell/chunks/bytes-6YUZMX3P.js +2 -0
- package/dist/bin/shell/chunks/cat-CL5ISR5P.js +2 -0
- package/dist/bin/shell/chunks/chmod-R6IWRSKZ.js +2 -0
- package/dist/bin/shell/chunks/chunk-227L3ACM.js +23 -0
- package/dist/bin/shell/chunks/chunk-2QA4P6HI.js +12 -0
- package/dist/bin/shell/chunks/chunk-3MFM4GSH.js +36 -0
- package/dist/bin/shell/chunks/chunk-3UP5LXDO.js +3 -0
- package/dist/bin/shell/chunks/chunk-47P7JSQI.js +2 -0
- package/dist/bin/shell/chunks/chunk-4KBTPDQB.js +3 -0
- package/dist/bin/shell/chunks/chunk-4UK2MV3F.js +13 -0
- package/dist/bin/shell/chunks/chunk-4VDEBYW7.js +2 -0
- package/dist/bin/shell/chunks/chunk-563AO4OL.js +7 -0
- package/dist/bin/shell/chunks/chunk-5HDWUXRX.js +7 -0
- package/dist/bin/shell/chunks/chunk-5MCFI6LE.js +5 -0
- package/dist/bin/shell/chunks/chunk-6CZOPIZD.js +6 -0
- package/dist/bin/shell/chunks/chunk-6FNFX5GG.js +5 -0
- package/dist/bin/shell/chunks/chunk-6NYIHYDY.js +7 -0
- package/dist/bin/shell/chunks/chunk-6Y4TKR73.js +16 -0
- package/dist/bin/shell/chunks/chunk-7C7WEK46.js +23 -0
- package/dist/bin/shell/chunks/chunk-7TNGQWY6.js +6 -0
- package/dist/bin/shell/chunks/chunk-7UAWRBQS.js +9 -0
- package/dist/bin/shell/chunks/chunk-ARGU3OIG.js +17 -0
- package/dist/bin/shell/chunks/chunk-BA3A5BYZ.js +3 -0
- package/dist/bin/shell/chunks/chunk-BB7T22CF.js +140 -0
- package/dist/bin/shell/chunks/chunk-BY24LKGP.js +8 -0
- package/dist/bin/shell/chunks/chunk-CRHN4WNQ.js +63 -0
- package/dist/bin/shell/chunks/chunk-ELZHJGI7.js +10 -0
- package/dist/bin/shell/chunks/chunk-F46CSMUF.js +2 -0
- package/dist/bin/shell/chunks/chunk-FQX4G5RH.js +7 -0
- package/dist/bin/shell/chunks/chunk-G43H2WGH.js +17 -0
- package/dist/bin/shell/chunks/chunk-GIFF636B.js +2 -0
- package/dist/bin/shell/chunks/chunk-GMJWC3MC.js +12 -0
- package/dist/bin/shell/chunks/chunk-HVDU57EV.js +16 -0
- package/dist/bin/shell/chunks/chunk-HWGK3XW7.js +6 -0
- package/dist/bin/shell/chunks/chunk-HYR7G7KS.js +3 -0
- package/dist/bin/shell/chunks/chunk-I2225JSU.js +14 -0
- package/dist/bin/shell/chunks/chunk-I2FUQZXU.js +11 -0
- package/dist/bin/shell/chunks/chunk-IBHPKKIT.js +10 -0
- package/dist/bin/shell/chunks/chunk-IKNNFJNZ.js +14 -0
- package/dist/bin/shell/chunks/chunk-INPUJM7Y.js +8 -0
- package/dist/bin/shell/chunks/chunk-IOBKPMWJ.js +9 -0
- package/dist/bin/shell/chunks/chunk-IYSA2L6A.js +13 -0
- package/dist/bin/shell/chunks/chunk-JMLNX7GE.js +287 -0
- package/dist/bin/shell/chunks/chunk-K2K4KPOQ.js +3 -0
- package/dist/bin/shell/chunks/chunk-K6DD7NH3.js +9 -0
- package/dist/bin/shell/chunks/chunk-KFLJ4EMB.js +4 -0
- package/dist/bin/shell/chunks/chunk-KOMDAXHM.js +7 -0
- package/dist/bin/shell/chunks/chunk-KV7ZTM2R.js +11 -0
- package/dist/bin/shell/chunks/chunk-LCCVVEJA.js +10 -0
- package/dist/bin/shell/chunks/chunk-LUPJK5US.js +84 -0
- package/dist/bin/shell/chunks/chunk-LWF3XDOC.js +32 -0
- package/dist/bin/shell/chunks/chunk-LXNARM2C.js +9 -0
- package/dist/bin/shell/chunks/chunk-LXZS3X5T.js +9 -0
- package/dist/bin/shell/chunks/chunk-M4ICSCXT.js +100 -0
- package/dist/bin/shell/chunks/chunk-MEBZXRGE.js +5 -0
- package/dist/bin/shell/chunks/chunk-MSPSS36S.js +16 -0
- package/dist/bin/shell/chunks/chunk-N335RIGZ.js +20 -0
- package/dist/bin/shell/chunks/chunk-N5KGQWJH.js +5 -0
- package/dist/bin/shell/chunks/chunk-NDHTQE5T.js +8 -0
- package/dist/bin/shell/chunks/chunk-NF5G7X3O.js +7 -0
- package/dist/bin/shell/chunks/chunk-NGKNJ6V2.js +11 -0
- package/dist/bin/shell/chunks/chunk-OBH7XN5N.js +1 -0
- package/dist/bin/shell/chunks/chunk-OKQ6RACF.js +73 -0
- package/dist/bin/shell/chunks/chunk-PBY7XGZ6.js +8 -0
- package/dist/bin/shell/chunks/chunk-PHHNNFRS.js +6 -0
- package/dist/bin/shell/chunks/chunk-PO6Y7TWQ.js +6 -0
- package/dist/bin/shell/chunks/chunk-Q4TLKLIZ.js +12 -0
- package/dist/bin/shell/chunks/chunk-QS6LP3E3.js +6 -0
- package/dist/bin/shell/chunks/chunk-QT2GMJRJ.js +8 -0
- package/dist/bin/shell/chunks/chunk-QUVW3R4I.js +5 -0
- package/dist/bin/shell/chunks/chunk-QUYWT2TY.js +21 -0
- package/dist/bin/shell/chunks/chunk-QWUII542.js +2 -0
- package/dist/bin/shell/chunks/chunk-R5EQDD5Y.js +13 -0
- package/dist/bin/shell/chunks/chunk-RQSPCXDR.js +2 -0
- package/dist/bin/shell/chunks/chunk-RTC6C5QW.js +2 -0
- package/dist/bin/shell/chunks/chunk-S5W2KVHC.js +2 -0
- package/dist/bin/shell/chunks/chunk-SDXDICI4.js +2 -0
- package/dist/bin/shell/chunks/chunk-SE4C7FJY.js +33 -0
- package/dist/bin/shell/chunks/chunk-SX7TI7Q2.js +3 -0
- package/dist/bin/shell/chunks/chunk-TDJ55L4A.js +16 -0
- package/dist/bin/shell/chunks/chunk-TNPUAMV3.js +8 -0
- package/dist/bin/shell/chunks/chunk-TSGSFBQI.js +14 -0
- package/dist/bin/shell/chunks/chunk-U5ZE562V.js +2 -0
- package/dist/bin/shell/chunks/chunk-UIMH6I3G.js +33 -0
- package/dist/bin/shell/chunks/chunk-UXPY5T2P.js +9 -0
- package/dist/bin/shell/chunks/chunk-UYBH3FNE.js +2 -0
- package/dist/bin/shell/chunks/chunk-V5I6PHN2.js +14 -0
- package/dist/bin/shell/chunks/chunk-VOTJNR36.js +5 -0
- package/dist/bin/shell/chunks/chunk-W5XFREQC.js +3 -0
- package/dist/bin/shell/chunks/chunk-X2MOXVGO.js +26 -0
- package/dist/bin/shell/chunks/chunk-XOGQUO62.js +2 -0
- package/dist/bin/shell/chunks/chunk-Y57BDPQ5.js +6 -0
- package/dist/bin/shell/chunks/chunk-YE6KXFFU.js +2 -0
- package/dist/bin/shell/chunks/chunk-YEPWKN4F.js +3 -0
- package/dist/bin/shell/chunks/chunk-ZEDWVSUZ.js +19 -0
- package/dist/bin/shell/chunks/chunk-ZI4TTZL5.js +21 -0
- package/dist/bin/shell/chunks/chunk-ZZVIGHYS.js +7 -0
- package/dist/bin/shell/chunks/clear-27OP2FQZ.js +2 -0
- package/dist/bin/shell/chunks/column-FJNKONCJ.js +2 -0
- package/dist/bin/shell/chunks/comm-5FNEJE7X.js +2 -0
- package/dist/bin/shell/chunks/cp-LVKHKFHQ.js +2 -0
- package/dist/bin/shell/chunks/curl-S4FJSZA5.js +26 -0
- package/dist/bin/shell/chunks/cut-UXU6PNTT.js +2 -0
- package/dist/bin/shell/chunks/date-GGPTXVUT.js +2 -0
- package/dist/bin/shell/chunks/diff-3V3FOITV.js +2 -0
- package/dist/bin/shell/chunks/dirname-455JDV2M.js +2 -0
- package/dist/bin/shell/chunks/du-WUEAQO2W.js +2 -0
- package/dist/bin/shell/chunks/echo-HBXOI5TQ.js +2 -0
- package/dist/bin/shell/chunks/env-MXFHTVHS.js +2 -0
- package/dist/bin/shell/chunks/expand-F4FM4ML2.js +2 -0
- package/dist/bin/shell/chunks/expansion-7AYBVOIQ.js +2 -0
- package/dist/bin/shell/chunks/expr-5ZKR5ER5.js +2 -0
- package/dist/bin/shell/chunks/file-BFN7BKUR.js +2 -0
- package/dist/bin/shell/chunks/find-W4BCEJEC.js +2 -0
- package/dist/bin/shell/chunks/flag-coverage-DBKGNLJO.js +2 -0
- package/dist/bin/shell/chunks/fold-AE57YLOS.js +2 -0
- package/dist/bin/shell/chunks/grep-I63BWUKL.js +2 -0
- package/dist/bin/shell/chunks/gzip-X5IDXWZE.js +2 -0
- package/dist/bin/shell/chunks/head-TBQETLQX.js +2 -0
- package/dist/bin/shell/chunks/help-HGMKZ2GW.js +2 -0
- package/dist/bin/shell/chunks/history-2DYRIL3U.js +2 -0
- package/dist/bin/shell/chunks/hostname-RWEPTCXH.js +2 -0
- package/dist/bin/shell/chunks/html-to-markdown-2VQWCEKU.js +2 -0
- package/dist/bin/shell/chunks/join-TRRWQBEU.js +2 -0
- package/dist/bin/shell/chunks/jq-NFKKH27D.js +2 -0
- package/dist/bin/shell/chunks/ln-BSEVUP2J.js +2 -0
- package/dist/bin/shell/chunks/ls-IJLTWVOI.js +2 -0
- package/dist/bin/shell/chunks/md5sum-ZIQHOC4K.js +2 -0
- package/dist/bin/shell/chunks/mkdir-KYFAO2SF.js +2 -0
- package/dist/bin/shell/chunks/mv-TWM2PA7Q.js +2 -0
- package/dist/bin/shell/chunks/nl-XLF2HFST.js +2 -0
- package/dist/bin/shell/chunks/od-BOM6JPTH.js +2 -0
- package/dist/bin/shell/chunks/paste-FUGXVGJX.js +2 -0
- package/dist/bin/shell/chunks/printf-XUGNJ3QM.js +2 -0
- package/dist/bin/shell/chunks/pwd-RZG6GZEU.js +2 -0
- package/dist/bin/shell/chunks/python3-PIXJS3YM.js +14 -0
- package/dist/bin/shell/chunks/readlink-4SOSIDHE.js +2 -0
- package/dist/bin/shell/chunks/rev-5E5UGSUZ.js +2 -0
- package/dist/bin/shell/chunks/rg-4YJSQZN7.js +2 -0
- package/dist/bin/shell/chunks/rm-3PFOF4E3.js +2 -0
- package/dist/bin/shell/chunks/rmdir-CSK7CGH5.js +2 -0
- package/dist/bin/shell/chunks/sed-XBCUZMEP.js +2 -0
- package/dist/bin/shell/chunks/seq-H7ID4VMK.js +2 -0
- package/dist/bin/shell/chunks/sha1sum-EDQNYXXH.js +2 -0
- package/dist/bin/shell/chunks/sha256sum-APTG6DO2.js +2 -0
- package/dist/bin/shell/chunks/sleep-PNT7KILS.js +2 -0
- package/dist/bin/shell/chunks/sort-ELAGZUES.js +2 -0
- package/dist/bin/shell/chunks/split-QGXYUWBC.js +2 -0
- package/dist/bin/shell/chunks/sqlite3-ELLMKNNJ.js +2 -0
- package/dist/bin/shell/chunks/stat-Q2TZRKO3.js +2 -0
- package/dist/bin/shell/chunks/strings-IGEGP5QX.js +2 -0
- package/dist/bin/shell/chunks/tac-VOEDJLLG.js +2 -0
- package/dist/bin/shell/chunks/tail-JOQASWMV.js +2 -0
- package/dist/bin/shell/chunks/tar-2UVSVD3P.js +2 -0
- package/dist/bin/shell/chunks/tee-IQLEDZOQ.js +2 -0
- package/dist/bin/shell/chunks/time-VRCJK2LI.js +2 -0
- package/dist/bin/shell/chunks/timeout-A36YWZWR.js +2 -0
- package/dist/bin/shell/chunks/touch-5ECNQNBP.js +2 -0
- package/dist/bin/shell/chunks/tr-AVALLN54.js +2 -0
- package/dist/bin/shell/chunks/tree-UFM5EDXS.js +2 -0
- package/dist/bin/shell/chunks/true-BU5JSAAW.js +2 -0
- package/dist/bin/shell/chunks/unexpand-TDRWZW5F.js +2 -0
- package/dist/bin/shell/chunks/uniq-IKBUNAMN.js +2 -0
- package/dist/bin/shell/chunks/wc-2R4RS2SX.js +2 -0
- package/dist/bin/shell/chunks/which-6UVGMXDF.js +2 -0
- package/dist/bin/shell/chunks/whoami-N6TLTETT.js +2 -0
- package/dist/bin/shell/chunks/xan-JX5QUK32.js +2 -0
- package/dist/bin/shell/chunks/xan-view-NFMUMJ7Z.js +2 -0
- package/dist/bin/shell/chunks/xargs-4MYN4U3C.js +2 -0
- package/dist/bin/shell/chunks/yq-EHDQVD7S.js +2 -0
- package/dist/bin/shell/shell.js +711 -0
- package/dist/browser.d.ts +22 -0
- package/dist/bundle/browser.js +1481 -0
- package/dist/bundle/chunks/alias-T2KDAHDL.js +1 -0
- package/dist/bundle/chunks/awk2-UIH6CPHX.js +1 -0
- package/dist/bundle/chunks/base64-RY5JPAQL.js +1 -0
- package/dist/bundle/chunks/basename-QT55QR7O.js +1 -0
- package/dist/bundle/chunks/bash-BZZ6TUGW.js +1 -0
- package/dist/bundle/chunks/bytes-W6ESHQ7F.js +1 -0
- package/dist/bundle/chunks/cat-WUR2OJUG.js +1 -0
- package/dist/bundle/chunks/chmod-LTQYKUUW.js +1 -0
- package/dist/bundle/chunks/chunk-24BT6QUB.js +11 -0
- package/dist/bundle/chunks/chunk-274QVGRQ.js +2 -0
- package/dist/bundle/chunks/chunk-2IKXAFP4.js +11 -0
- package/dist/bundle/chunks/chunk-2IO54DPD.js +1 -0
- package/dist/bundle/chunks/chunk-2VAJD54D.js +13 -0
- package/dist/bundle/chunks/chunk-34P4G5H7.js +5 -0
- package/dist/bundle/chunks/chunk-3OY3UJDR.js +62 -0
- package/dist/bundle/chunks/chunk-3R6EWKMD.js +13 -0
- package/dist/bundle/chunks/chunk-3SPSXVPQ.js +2 -0
- package/dist/bundle/chunks/chunk-43RXAZRC.js +7 -0
- package/dist/bundle/chunks/chunk-44UOCSGV.js +1 -0
- package/dist/bundle/chunks/chunk-47LWQIG6.js +15 -0
- package/dist/bundle/chunks/chunk-4L3Y4LKT.js +5 -0
- package/dist/bundle/chunks/chunk-4LYDOEQ6.js +4 -0
- package/dist/bundle/chunks/chunk-4Q5DFBVQ.js +6 -0
- package/dist/bundle/chunks/chunk-4R5AUIZ4.js +6 -0
- package/dist/bundle/chunks/chunk-4UTZCT3W.js +2 -0
- package/dist/bundle/chunks/chunk-5FDLF2FN.js +5 -0
- package/dist/bundle/chunks/chunk-5HJSZMTG.js +1 -0
- package/dist/bundle/chunks/chunk-5NR6JZM4.js +12 -0
- package/dist/bundle/chunks/chunk-5PL72KVW.js +7 -0
- package/dist/bundle/chunks/chunk-6BM2WKUH.js +23 -0
- package/dist/bundle/chunks/chunk-6HLDZZOT.js +4 -0
- package/dist/bundle/chunks/chunk-7MKBHGLS.js +1 -0
- package/dist/bundle/chunks/chunk-7VHVF5PX.js +20 -0
- package/dist/bundle/chunks/chunk-A3YV3X3J.js +6 -0
- package/dist/bundle/chunks/chunk-AJNR4FJT.js +8 -0
- package/dist/bundle/chunks/chunk-AMQM5ZPF.js +1 -0
- package/dist/bundle/chunks/chunk-BCDE2QUY.js +1 -0
- package/dist/bundle/chunks/chunk-BMKJMOWP.js +2 -0
- package/dist/bundle/chunks/chunk-BVFIC7R6.js +4 -0
- package/dist/bundle/chunks/chunk-CC4HUWHZ.js +4 -0
- package/dist/bundle/chunks/chunk-CNCKROJZ.js +10 -0
- package/dist/bundle/chunks/chunk-CSFZQCAK.js +139 -0
- package/dist/bundle/chunks/chunk-CU7G2LMR.js +1 -0
- package/dist/bundle/chunks/chunk-CZP7PMAG.js +4 -0
- package/dist/bundle/chunks/chunk-D2OUCFAU.js +8 -0
- package/dist/bundle/chunks/chunk-DQXLKPVQ.js +7 -0
- package/dist/bundle/chunks/chunk-E6IR6BWV.js +286 -0
- package/dist/bundle/chunks/chunk-ELZ2RVIZ.js +11 -0
- package/dist/bundle/chunks/chunk-EVNUXIEZ.js +2 -0
- package/dist/bundle/chunks/chunk-F6FQRFZU.js +6 -0
- package/dist/bundle/chunks/chunk-FAECBHMR.js +2 -0
- package/dist/bundle/chunks/chunk-FBOLGXN4.js +16 -0
- package/dist/bundle/chunks/chunk-FNIOXBJW.js +9 -0
- package/dist/bundle/chunks/chunk-GD5SDRL7.js +5 -0
- package/dist/bundle/chunks/chunk-GEAGCSIY.js +31 -0
- package/dist/bundle/chunks/chunk-GI2KN5IL.js +22 -0
- package/dist/bundle/chunks/chunk-GOG2LNAH.js +9 -0
- package/dist/bundle/chunks/chunk-H2ENJVUI.js +10 -0
- package/dist/bundle/chunks/chunk-HDNR2KMO.js +13 -0
- package/dist/bundle/chunks/chunk-HJ37IXKX.js +12 -0
- package/dist/bundle/chunks/chunk-I36BZMR3.js +1 -0
- package/dist/bundle/chunks/chunk-I6YSZMB6.js +15 -0
- package/dist/bundle/chunks/chunk-IJXFPKNC.js +1 -0
- package/dist/bundle/chunks/chunk-IXD4Z54Z.js +8 -0
- package/dist/bundle/chunks/chunk-J44PYBAW.js +2 -0
- package/dist/bundle/chunks/chunk-JDREUEBG.js +9 -0
- package/dist/bundle/chunks/chunk-KA244HSE.js +5 -0
- package/dist/bundle/chunks/chunk-KKZJ6K7R.js +8 -0
- package/dist/bundle/chunks/chunk-KZ3P3SVS.js +22 -0
- package/dist/bundle/chunks/chunk-LIVSDOY2.js +1 -0
- package/dist/bundle/chunks/chunk-LX7SQKLW.js +15 -0
- package/dist/bundle/chunks/chunk-M5O5DYR7.js +1 -0
- package/dist/bundle/chunks/chunk-MML7K3J2.js +6 -0
- package/dist/bundle/chunks/chunk-N4GRDEVJ.js +5 -0
- package/dist/bundle/chunks/chunk-NPZMNEW5.js +6 -0
- package/dist/bundle/chunks/chunk-NUFRM6SI.js +0 -0
- package/dist/bundle/chunks/chunk-O7N2RCS7.js +1 -0
- package/dist/bundle/chunks/chunk-OSYLT4VG.js +4 -0
- package/dist/bundle/chunks/chunk-OXRHP7HO.js +3 -0
- package/dist/bundle/chunks/chunk-OZOS3R6K.js +99 -0
- package/dist/bundle/chunks/chunk-OZQ4AW5X.js +8 -0
- package/dist/bundle/chunks/chunk-PNGAWBIZ.js +10 -0
- package/dist/bundle/chunks/chunk-PPUKM2B7.js +13 -0
- package/dist/bundle/chunks/chunk-PTELGM2J.js +7 -0
- package/dist/bundle/chunks/chunk-Q3TLRYBC.js +72 -0
- package/dist/bundle/chunks/chunk-Q5AOYNOX.js +6 -0
- package/dist/bundle/chunks/chunk-QEKGAAIL.js +1 -0
- package/dist/bundle/chunks/chunk-QIL3FXIC.js +6 -0
- package/dist/bundle/chunks/chunk-QNZEO23C.js +8 -0
- package/dist/bundle/chunks/chunk-R4IVADTA.js +7 -0
- package/dist/bundle/chunks/chunk-RK57WTFF.js +12 -0
- package/dist/bundle/chunks/chunk-RU5M6ZRS.js +4 -0
- package/dist/bundle/chunks/chunk-SBVBPPEQ.js +5 -0
- package/dist/bundle/chunks/chunk-SP22LBKJ.js +20 -0
- package/dist/bundle/chunks/chunk-UKS3AEEA.js +32 -0
- package/dist/bundle/chunks/chunk-UYR5HJI6.js +7 -0
- package/dist/bundle/chunks/chunk-V6ANTLBA.js +15 -0
- package/dist/bundle/chunks/chunk-VLGZJRPG.js +16 -0
- package/dist/bundle/chunks/chunk-VZUQMDOT.js +2 -0
- package/dist/bundle/chunks/chunk-XDQU6V6S.js +19 -0
- package/dist/bundle/chunks/chunk-XRVUJRYI.js +35 -0
- package/dist/bundle/chunks/chunk-YNYSPYQ5.js +32 -0
- package/dist/bundle/chunks/clear-NLKZY76S.js +1 -0
- package/dist/bundle/chunks/column-S7P64XRJ.js +1 -0
- package/dist/bundle/chunks/comm-FPLN4BYY.js +1 -0
- package/dist/bundle/chunks/cp-W5HXJH5J.js +1 -0
- package/dist/bundle/chunks/curl-UFR6W4B6.js +25 -0
- package/dist/bundle/chunks/cut-VNFQFCA7.js +1 -0
- package/dist/bundle/chunks/date-EDSSFONA.js +1 -0
- package/dist/bundle/chunks/diff-RR5VJXIT.js +1 -0
- package/dist/bundle/chunks/dirname-V7Z24BGZ.js +1 -0
- package/dist/bundle/chunks/du-QKRPQIMY.js +1 -0
- package/dist/bundle/chunks/echo-TR3BM2AJ.js +1 -0
- package/dist/bundle/chunks/env-SVQBHVZF.js +1 -0
- package/dist/bundle/chunks/expand-ZVCJ72RF.js +1 -0
- package/dist/bundle/chunks/expansion-OBOJBZTH.js +1 -0
- package/dist/bundle/chunks/expr-QRA5KFYV.js +1 -0
- package/dist/bundle/chunks/file-TORG4IVZ.js +1 -0
- package/dist/bundle/chunks/find-NAGPRRQ7.js +1 -0
- package/dist/bundle/chunks/flag-coverage-FMTW4YWD.js +1 -0
- package/dist/bundle/chunks/fold-L4U6GS2N.js +1 -0
- package/dist/bundle/chunks/grep-D6AI423Z.js +1 -0
- package/dist/bundle/chunks/gzip-4EFUBHN7.js +1 -0
- package/dist/bundle/chunks/head-KBQT2JAC.js +1 -0
- package/dist/bundle/chunks/help-F3TJS3LS.js +1 -0
- package/dist/bundle/chunks/history-OKEAINJD.js +1 -0
- package/dist/bundle/chunks/hostname-AGIPNJOC.js +1 -0
- package/dist/bundle/chunks/html-to-markdown-P2LSCPVF.js +1 -0
- package/dist/bundle/chunks/join-FTSZAZYU.js +1 -0
- package/dist/bundle/chunks/jq-TNIKCGGT.js +1 -0
- package/dist/bundle/chunks/ln-BWYUCELO.js +1 -0
- package/dist/bundle/chunks/ls-6BM6G675.js +1 -0
- package/dist/bundle/chunks/md5sum-ALFVDB3W.js +1 -0
- package/dist/bundle/chunks/mkdir-I3BZBLTZ.js +1 -0
- package/dist/bundle/chunks/mv-76WRD5SE.js +1 -0
- package/dist/bundle/chunks/nl-77Q7V2GV.js +1 -0
- package/dist/bundle/chunks/od-AA6TIC6A.js +1 -0
- package/dist/bundle/chunks/paste-C6JKQOHO.js +1 -0
- package/dist/bundle/chunks/printf-WOYMDX2I.js +1 -0
- package/dist/bundle/chunks/pwd-BE3B3ZPG.js +1 -0
- package/dist/bundle/chunks/python3-QFUFNW7I.js +13 -0
- package/dist/bundle/chunks/readlink-QI6K7ZZX.js +1 -0
- package/dist/bundle/chunks/rev-2FZQEIQG.js +1 -0
- package/dist/bundle/chunks/rg-CNS6SD3V.js +1 -0
- package/dist/bundle/chunks/rm-JMWEKCU4.js +1 -0
- package/dist/bundle/chunks/rmdir-5HDB4IQ7.js +1 -0
- package/dist/bundle/chunks/sed-CSUGXVBJ.js +1 -0
- package/dist/bundle/chunks/seq-UP62NDEL.js +1 -0
- package/dist/bundle/chunks/sha1sum-XXYTWQIW.js +1 -0
- package/dist/bundle/chunks/sha256sum-GD6AFWG3.js +1 -0
- package/dist/bundle/chunks/sleep-225KIGXI.js +1 -0
- package/dist/bundle/chunks/sort-BIWEEIVX.js +1 -0
- package/dist/bundle/chunks/split-QUFGLTTX.js +1 -0
- package/dist/bundle/chunks/sqlite3-3ZFEGTQ7.js +1 -0
- package/dist/bundle/chunks/stat-DIMPSC6S.js +1 -0
- package/dist/bundle/chunks/strings-LECMRXOT.js +1 -0
- package/dist/bundle/chunks/tac-A6JKZKWL.js +1 -0
- package/dist/bundle/chunks/tail-YGDXZZGG.js +1 -0
- package/dist/bundle/chunks/tar-7KN7KZ6S.js +1 -0
- package/dist/bundle/chunks/tee-J4MBDQJZ.js +1 -0
- package/dist/bundle/chunks/time-CVS7ESWV.js +1 -0
- package/dist/bundle/chunks/timeout-UX2PSLYJ.js +1 -0
- package/dist/bundle/chunks/touch-ATQADRUQ.js +1 -0
- package/dist/bundle/chunks/tr-QVFN4YWH.js +1 -0
- package/dist/bundle/chunks/tree-IY7WNFVF.js +1 -0
- package/dist/bundle/chunks/true-AKKYE7WM.js +1 -0
- package/dist/bundle/chunks/unexpand-2WTX7UPB.js +1 -0
- package/dist/bundle/chunks/uniq-XS6VGRO2.js +1 -0
- package/dist/bundle/chunks/wc-22EISCPD.js +1 -0
- package/dist/bundle/chunks/which-IWHCX6SW.js +1 -0
- package/dist/bundle/chunks/whoami-HCON4D7C.js +1 -0
- package/dist/bundle/chunks/worker.js +2260 -0
- package/dist/bundle/chunks/xan-XDECJHII.js +1 -0
- package/dist/bundle/chunks/xan-view-IJ4EABH7.js +1 -0
- package/dist/bundle/chunks/xargs-5MMN7C6P.js +1 -0
- package/dist/bundle/chunks/yq-LQX5YIGM.js +1 -0
- package/dist/bundle/index.js +688 -0
- package/dist/commands/alias/alias.d.ts +6 -0
- package/dist/commands/awk/ast.d.ts +202 -0
- package/dist/commands/awk/awk2.d.ts +9 -0
- package/dist/commands/awk/builtins.d.ts +17 -0
- package/dist/commands/awk/interpreter/context.d.ts +73 -0
- package/dist/commands/awk/interpreter/expressions.d.ts +17 -0
- package/dist/commands/awk/interpreter/fields.d.ts +25 -0
- package/dist/commands/awk/interpreter/index.d.ts +8 -0
- package/dist/commands/awk/interpreter/interpreter.d.ts +52 -0
- package/dist/commands/awk/interpreter/statements.d.ts +11 -0
- package/dist/commands/awk/interpreter/type-coercion.d.ts +32 -0
- package/dist/commands/awk/interpreter/types.d.ts +13 -0
- package/dist/commands/awk/interpreter/variables.d.ts +35 -0
- package/dist/commands/awk/lexer.d.ts +100 -0
- package/dist/commands/awk/parser2-print.d.ts +35 -0
- package/dist/commands/awk/parser2.d.ts +81 -0
- package/dist/commands/base64/base64.d.ts +7 -0
- package/dist/commands/basename/basename.d.ts +4 -0
- package/dist/commands/bash/bash.d.ts +6 -0
- package/dist/commands/browser-excluded.d.ts +16 -0
- package/dist/commands/cat/cat.d.ts +4 -0
- package/dist/commands/chmod/chmod.d.ts +4 -0
- package/dist/commands/clear/clear.d.ts +4 -0
- package/dist/commands/column/column.d.ts +11 -0
- package/dist/commands/comm/comm.d.ts +12 -0
- package/dist/commands/cp/cp.d.ts +4 -0
- package/dist/commands/curl/curl.d.ts +8 -0
- package/dist/commands/curl/form.d.ts +21 -0
- package/dist/commands/curl/help.d.ts +9 -0
- package/dist/commands/curl/parse.d.ts +9 -0
- package/dist/commands/curl/response-formatting.d.ts +20 -0
- package/dist/commands/curl/types.d.ts +31 -0
- package/dist/commands/cut/cut.d.ts +4 -0
- package/dist/commands/date/date.d.ts +7 -0
- package/dist/commands/diff/diff.d.ts +7 -0
- package/dist/commands/dirname/dirname.d.ts +4 -0
- package/dist/commands/du/du.d.ts +4 -0
- package/dist/commands/echo/echo.d.ts +4 -0
- package/dist/commands/env/env.d.ts +6 -0
- package/dist/commands/expand/expand.d.ts +12 -0
- package/dist/commands/expand/unexpand.d.ts +12 -0
- package/dist/commands/expr/expr.d.ts +9 -0
- package/dist/commands/file/file.d.ts +9 -0
- package/dist/commands/find/find.d.ts +4 -0
- package/dist/commands/find/matcher.d.ts +69 -0
- package/dist/commands/find/parser.d.ts +2 -0
- package/dist/commands/find/types.d.ts +88 -0
- package/dist/commands/flag-coverage.d.ts +2 -0
- package/dist/commands/fold/fold.d.ts +12 -0
- package/dist/commands/fuzz-flags-types.d.ts +17 -0
- package/dist/commands/fuzz-flags.d.ts +8 -0
- package/dist/commands/grep/grep.d.ts +8 -0
- package/dist/commands/gzip/gzip.d.ts +13 -0
- package/dist/commands/head/head-tail-shared.d.ts +38 -0
- package/dist/commands/head/head.d.ts +4 -0
- package/dist/commands/help/help.d.ts +4 -0
- package/dist/commands/help.d.ts +16 -0
- package/dist/commands/history/history.d.ts +4 -0
- package/dist/commands/hostname/hostname.d.ts +11 -0
- package/dist/commands/html-to-markdown/html-to-markdown.d.ts +9 -0
- package/dist/commands/join/join.d.ts +12 -0
- package/dist/commands/jq/jq.d.ts +9 -0
- package/dist/commands/ln/ln.d.ts +4 -0
- package/dist/commands/ls/ls.d.ts +4 -0
- package/dist/commands/md5sum/checksum.d.ts +7 -0
- package/dist/commands/md5sum/md5sum.d.ts +4 -0
- package/dist/commands/md5sum/sha1sum.d.ts +4 -0
- package/dist/commands/md5sum/sha256sum.d.ts +4 -0
- package/dist/commands/mkdir/mkdir.d.ts +4 -0
- package/dist/commands/mv/mv.d.ts +4 -0
- package/dist/commands/nl/nl.d.ts +12 -0
- package/dist/commands/od/od.d.ts +12 -0
- package/dist/commands/paste/paste.d.ts +4 -0
- package/dist/commands/printf/escapes.d.ts +31 -0
- package/dist/commands/printf/printf.d.ts +4 -0
- package/dist/commands/printf/strftime.d.ts +9 -0
- package/dist/commands/pwd/pwd.d.ts +4 -0
- package/dist/commands/python3/fs-bridge-handler.d.ts +50 -0
- package/dist/commands/python3/protocol.d.ts +138 -0
- package/dist/commands/python3/python3.d.ts +11 -0
- package/dist/commands/python3/sync-fs-backend.d.ts +59 -0
- package/dist/commands/python3/worker.d.ts +22 -0
- package/dist/commands/query-engine/builtins/array-builtins.d.ts +20 -0
- package/dist/commands/query-engine/builtins/control-builtins.d.ts +18 -0
- package/dist/commands/query-engine/builtins/date-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/format-builtins.d.ts +11 -0
- package/dist/commands/query-engine/builtins/index-builtins.d.ts +16 -0
- package/dist/commands/query-engine/builtins/index.d.ts +17 -0
- package/dist/commands/query-engine/builtins/math-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/navigation-builtins.d.ts +18 -0
- package/dist/commands/query-engine/builtins/object-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/path-builtins.d.ts +20 -0
- package/dist/commands/query-engine/builtins/sql-builtins.d.ts +16 -0
- package/dist/commands/query-engine/builtins/string-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/type-builtins.d.ts +11 -0
- package/dist/commands/query-engine/evaluator.d.ts +37 -0
- package/dist/commands/query-engine/index.d.ts +8 -0
- package/dist/commands/query-engine/parser-types.d.ts +171 -0
- package/dist/commands/query-engine/parser.d.ts +9 -0
- package/dist/commands/query-engine/path-operations.d.ts +15 -0
- package/dist/commands/query-engine/safe-object.d.ts +59 -0
- package/dist/commands/query-engine/value-operations.d.ts +41 -0
- package/dist/commands/readlink/readlink.d.ts +4 -0
- package/dist/commands/registry.d.ts +45 -0
- package/dist/commands/rev/rev.d.ts +13 -0
- package/dist/commands/rg/file-types.d.ts +49 -0
- package/dist/commands/rg/gitignore.d.ts +98 -0
- package/dist/commands/rg/rg-options.d.ts +61 -0
- package/dist/commands/rg/rg-parser.d.ts +20 -0
- package/dist/commands/rg/rg-search.d.ts +15 -0
- package/dist/commands/rg/rg.d.ts +14 -0
- package/dist/commands/rm/rm.d.ts +4 -0
- package/dist/commands/rmdir/rmdir.d.ts +4 -0
- package/dist/commands/search-engine/index.d.ts +10 -0
- package/dist/commands/search-engine/matcher.d.ts +60 -0
- package/dist/commands/search-engine/regex.d.ts +33 -0
- package/dist/commands/sed/executor.d.ts +7 -0
- package/dist/commands/sed/lexer.d.ts +86 -0
- package/dist/commands/sed/parser.d.ts +18 -0
- package/dist/commands/sed/sed-regex.d.ts +23 -0
- package/dist/commands/sed/sed.d.ts +4 -0
- package/dist/commands/sed/types.d.ts +219 -0
- package/dist/commands/seq/seq.d.ts +16 -0
- package/dist/commands/sleep/sleep.d.ts +4 -0
- package/dist/commands/sort/comparator.d.ts +9 -0
- package/dist/commands/sort/parser.d.ts +11 -0
- package/dist/commands/sort/sort.d.ts +4 -0
- package/dist/commands/sort/types.d.ts +30 -0
- package/dist/commands/split/split.d.ts +12 -0
- package/dist/commands/sqlite3/formatters.d.ts +15 -0
- package/dist/commands/sqlite3/sqlite3.d.ts +16 -0
- package/dist/commands/sqlite3/worker.d.ts +44 -0
- package/dist/commands/stat/stat.d.ts +4 -0
- package/dist/commands/strings/strings.d.ts +12 -0
- package/dist/commands/tac/tac.d.ts +11 -0
- package/dist/commands/tail/tail.d.ts +4 -0
- package/dist/commands/tar/archive.d.ts +107 -0
- package/dist/commands/tar/tar-options.d.ts +36 -0
- package/dist/commands/tar/tar.d.ts +10 -0
- package/dist/commands/tee/tee.d.ts +4 -0
- package/dist/commands/time/time.d.ts +27 -0
- package/dist/commands/timeout/timeout.d.ts +4 -0
- package/dist/commands/touch/touch.d.ts +4 -0
- package/dist/commands/tr/tr.d.ts +4 -0
- package/dist/commands/tree/tree.d.ts +4 -0
- package/dist/commands/true/true.d.ts +6 -0
- package/dist/commands/uniq/uniq.d.ts +4 -0
- package/dist/commands/wc/wc.d.ts +4 -0
- package/dist/commands/which/which.d.ts +4 -0
- package/dist/commands/whoami/whoami.d.ts +11 -0
- package/dist/commands/xan/aggregation.d.ts +20 -0
- package/dist/commands/xan/column-selection.d.ts +19 -0
- package/dist/commands/xan/csv.d.ts +37 -0
- package/dist/commands/xan/moonblade-parser.d.ts +80 -0
- package/dist/commands/xan/moonblade-to-jq.d.ts +12 -0
- package/dist/commands/xan/moonblade-tokenizer.d.ts +25 -0
- package/dist/commands/xan/subcommands.d.ts +15 -0
- package/dist/commands/xan/xan-agg.d.ts +8 -0
- package/dist/commands/xan/xan-columns.d.ts +8 -0
- package/dist/commands/xan/xan-core.d.ts +10 -0
- package/dist/commands/xan/xan-data.d.ts +52 -0
- package/dist/commands/xan/xan-filter.d.ts +8 -0
- package/dist/commands/xan/xan-map.d.ts +11 -0
- package/dist/commands/xan/xan-reshape.d.ts +40 -0
- package/dist/commands/xan/xan-simple.d.ts +40 -0
- package/dist/commands/xan/xan-view.d.ts +12 -0
- package/dist/commands/xan/xan.d.ts +10 -0
- package/dist/commands/xargs/xargs.d.ts +4 -0
- package/dist/commands/yq/formats.d.ts +64 -0
- package/dist/commands/yq/yq.d.ts +13 -0
- package/dist/custom-commands.d.ts +61 -0
- package/dist/fs/encoding.d.ts +17 -0
- package/dist/fs/in-memory-fs/in-memory-fs.d.ts +63 -0
- package/dist/fs/in-memory-fs/index.d.ts +1 -0
- package/dist/fs/init.d.ts +12 -0
- package/dist/fs/interface.d.ts +219 -0
- package/dist/fs/mountable-fs/index.d.ts +1 -0
- package/dist/fs/mountable-fs/mountable-fs.d.ts +120 -0
- package/dist/fs/overlay-fs/index.d.ts +1 -0
- package/dist/fs/overlay-fs/overlay-fs.d.ts +126 -0
- package/dist/fs/read-write-fs/index.d.ts +1 -0
- package/dist/fs/read-write-fs/read-write-fs.d.ts +69 -0
- package/dist/index.d.ts +19 -0
- package/dist/interpreter/alias-expansion.d.ts +23 -0
- package/dist/interpreter/arithmetic.d.ts +24 -0
- package/dist/interpreter/assignment-expansion.d.ts +24 -0
- package/dist/interpreter/builtin-dispatch.d.ts +39 -0
- package/dist/interpreter/builtins/break.d.ts +6 -0
- package/dist/interpreter/builtins/cd.d.ts +6 -0
- package/dist/interpreter/builtins/compgen.d.ts +26 -0
- package/dist/interpreter/builtins/complete.d.ts +17 -0
- package/dist/interpreter/builtins/compopt.d.ts +28 -0
- package/dist/interpreter/builtins/continue.d.ts +6 -0
- package/dist/interpreter/builtins/declare-array-parsing.d.ts +14 -0
- package/dist/interpreter/builtins/declare-print.d.ts +39 -0
- package/dist/interpreter/builtins/declare.d.ts +35 -0
- package/dist/interpreter/builtins/dirs.d.ts +29 -0
- package/dist/interpreter/builtins/eval.d.ts +9 -0
- package/dist/interpreter/builtins/exit.d.ts +5 -0
- package/dist/interpreter/builtins/export.d.ts +14 -0
- package/dist/interpreter/builtins/getopts.d.ts +18 -0
- package/dist/interpreter/builtins/hash.d.ts +19 -0
- package/dist/interpreter/builtins/help.d.ts +12 -0
- package/dist/interpreter/builtins/index.d.ts +45 -0
- package/dist/interpreter/builtins/let.d.ts +18 -0
- package/dist/interpreter/builtins/local.d.ts +6 -0
- package/dist/interpreter/builtins/mapfile.d.ts +17 -0
- package/dist/interpreter/builtins/read.d.ts +6 -0
- package/dist/interpreter/builtins/return.d.ts +6 -0
- package/dist/interpreter/builtins/set.d.ts +9 -0
- package/dist/interpreter/builtins/shift.d.ts +15 -0
- package/dist/interpreter/builtins/shopt.d.ts +7 -0
- package/dist/interpreter/builtins/source.d.ts +6 -0
- package/dist/interpreter/builtins/unset.d.ts +16 -0
- package/dist/interpreter/builtins/variable-assignment.d.ts +66 -0
- package/dist/interpreter/command-resolution.d.ts +43 -0
- package/dist/interpreter/conditionals.d.ts +17 -0
- package/dist/interpreter/control-flow.d.ts +21 -0
- package/dist/interpreter/errors.d.ts +150 -0
- package/dist/interpreter/expansion/analysis.d.ts +37 -0
- package/dist/interpreter/expansion/arith-text-expansion.d.ts +20 -0
- package/dist/interpreter/expansion/array-pattern-ops.d.ts +21 -0
- package/dist/interpreter/expansion/array-prefix-suffix.d.ts +46 -0
- package/dist/interpreter/expansion/array-slice-transform.d.ts +36 -0
- package/dist/interpreter/expansion/array-word-expansion.d.ts +39 -0
- package/dist/interpreter/expansion/brace-range.d.ts +20 -0
- package/dist/interpreter/expansion/command-substitution.d.ts +23 -0
- package/dist/interpreter/expansion/glob-escape.d.ts +32 -0
- package/dist/interpreter/expansion/indirect-expansion.d.ts +42 -0
- package/dist/interpreter/expansion/parameter-ops.d.ts +113 -0
- package/dist/interpreter/expansion/pattern-expansion.d.ts +23 -0
- package/dist/interpreter/expansion/pattern-removal.d.ts +18 -0
- package/dist/interpreter/expansion/pattern.d.ts +23 -0
- package/dist/interpreter/expansion/positional-params.d.ts +59 -0
- package/dist/interpreter/expansion/prompt.d.ts +39 -0
- package/dist/interpreter/expansion/quoting.d.ts +13 -0
- package/dist/interpreter/expansion/tilde.d.ts +12 -0
- package/dist/interpreter/expansion/unquoted-expansion.d.ts +76 -0
- package/dist/interpreter/expansion/variable-attrs.d.ts +19 -0
- package/dist/interpreter/expansion/variable.d.ts +43 -0
- package/dist/interpreter/expansion/word-glob-expansion.d.ts +33 -0
- package/dist/interpreter/expansion/word-split.d.ts +29 -0
- package/dist/interpreter/expansion.d.ts +57 -0
- package/dist/interpreter/functions.d.ts +12 -0
- package/dist/interpreter/helpers/array.d.ts +43 -0
- package/dist/interpreter/helpers/condition.d.ts +18 -0
- package/dist/interpreter/helpers/errors.d.ts +8 -0
- package/dist/interpreter/helpers/file-tests.d.ts +33 -0
- package/dist/interpreter/helpers/ifs.d.ts +104 -0
- package/dist/interpreter/helpers/loop.d.ts +24 -0
- package/dist/interpreter/helpers/nameref.d.ts +65 -0
- package/dist/interpreter/helpers/numeric-compare.d.ts +13 -0
- package/dist/interpreter/helpers/quoting.d.ts +24 -0
- package/dist/interpreter/helpers/readonly.d.ts +45 -0
- package/dist/interpreter/helpers/regex.d.ts +8 -0
- package/dist/interpreter/helpers/result.d.ts +62 -0
- package/dist/interpreter/helpers/shell-constants.d.ts +25 -0
- package/dist/interpreter/helpers/shellopts.d.ts +28 -0
- package/dist/interpreter/helpers/statements.d.ts +20 -0
- package/dist/interpreter/helpers/string-compare.d.ts +24 -0
- package/dist/interpreter/helpers/string-tests.d.ts +13 -0
- package/dist/interpreter/helpers/tilde.d.ts +13 -0
- package/dist/interpreter/helpers/variable-tests.d.ts +9 -0
- package/dist/interpreter/helpers/word-matching.d.ts +26 -0
- package/dist/interpreter/helpers/word-parts.d.ts +29 -0
- package/dist/interpreter/helpers/xtrace.d.ts +18 -0
- package/dist/interpreter/index.d.ts +3 -0
- package/dist/interpreter/interpreter.d.ts +65 -0
- package/dist/interpreter/pipeline-execution.d.ts +16 -0
- package/dist/interpreter/redirections.d.ts +51 -0
- package/dist/interpreter/simple-command-assignments.d.ts +29 -0
- package/dist/interpreter/subshell-group.d.ts +32 -0
- package/dist/interpreter/type-command.d.ts +37 -0
- package/dist/interpreter/types.d.ts +317 -0
- package/dist/limits.d.ts +42 -0
- package/dist/network/allow-list/shared.d.ts +45 -0
- package/dist/network/allow-list.d.ts +51 -0
- package/dist/network/fetch.d.ts +25 -0
- package/dist/network/index.d.ts +7 -0
- package/dist/network/types.d.ts +96 -0
- package/dist/parser/arithmetic-parser.d.ts +23 -0
- package/dist/parser/arithmetic-primaries.d.ts +45 -0
- package/dist/parser/command-parser.d.ts +10 -0
- package/dist/parser/compound-parser.d.ts +28 -0
- package/dist/parser/conditional-parser.d.ts +8 -0
- package/dist/parser/expansion-parser.d.ts +16 -0
- package/dist/parser/lexer.d.ts +192 -0
- package/dist/parser/parser-substitution.d.ts +62 -0
- package/dist/parser/parser.d.ts +135 -0
- package/dist/parser/types.d.ts +25 -0
- package/dist/parser/word-parser.d.ts +33 -0
- package/dist/sandbox/Command.d.ts +28 -0
- package/dist/sandbox/Sandbox.d.ts +60 -0
- package/dist/sandbox/index.d.ts +2 -0
- package/dist/shell-metadata.d.ts +28 -0
- package/dist/test-utils.d.ts +15 -0
- package/dist/types.d.ts +148 -0
- package/dist/utils/args.d.ts +55 -0
- package/dist/utils/bytes.d.ts +39 -0
- package/dist/utils/constants.d.ts +15 -0
- package/dist/utils/file-reader.d.ts +67 -0
- package/dist/utils/glob.d.ts +25 -0
- package/package.json +115 -0
|
@@ -0,0 +1,615 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Abstract Syntax Tree (AST) Types for Bash
|
|
3
|
+
*
|
|
4
|
+
* This module defines the complete AST structure for bash scripts.
|
|
5
|
+
* The design follows the actual bash grammar while being TypeScript-idiomatic.
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* Input → Lexer → Parser → AST → Expander → Interpreter → Output
|
|
9
|
+
*
|
|
10
|
+
* Each node type corresponds to a bash construct and can be visited
|
|
11
|
+
* by the tree-walking interpreter.
|
|
12
|
+
*/
|
|
13
|
+
/** Base interface for all AST nodes */
|
|
14
|
+
export interface ASTNode {
|
|
15
|
+
type: string;
|
|
16
|
+
/** Source line number (1-based) for $LINENO tracking. May be 0 or undefined for synthesized nodes. */
|
|
17
|
+
line?: number;
|
|
18
|
+
}
|
|
19
|
+
/** Position information for error reporting */
|
|
20
|
+
export interface Position {
|
|
21
|
+
line: number;
|
|
22
|
+
column: number;
|
|
23
|
+
offset: number;
|
|
24
|
+
}
|
|
25
|
+
/** Span in source code */
|
|
26
|
+
export interface Span {
|
|
27
|
+
start: Position;
|
|
28
|
+
end: Position;
|
|
29
|
+
}
|
|
30
|
+
/** Root node: a complete script */
|
|
31
|
+
export interface ScriptNode extends ASTNode {
|
|
32
|
+
type: "Script";
|
|
33
|
+
statements: StatementNode[];
|
|
34
|
+
}
|
|
35
|
+
/** A statement is a list of pipelines connected by && or || */
|
|
36
|
+
export interface StatementNode extends ASTNode {
|
|
37
|
+
type: "Statement";
|
|
38
|
+
pipelines: PipelineNode[];
|
|
39
|
+
/** Operators between pipelines: "&&" | "||" | ";" */
|
|
40
|
+
operators: ("&&" | "||" | ";")[];
|
|
41
|
+
/** Run in background? */
|
|
42
|
+
background: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Deferred syntax error. If set, executing this statement will throw a syntax error.
|
|
45
|
+
* This is used to support bash's incremental parsing behavior where syntax errors
|
|
46
|
+
* on later lines only trigger if/when execution reaches that line.
|
|
47
|
+
* Example: `{ls;\n}` - the } is invalid but with errexit, the script exits before reaching it.
|
|
48
|
+
*/
|
|
49
|
+
deferredError?: {
|
|
50
|
+
message: string;
|
|
51
|
+
token: string;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Original source text for verbose mode (set -v).
|
|
55
|
+
* When verbose mode is enabled, this text is printed to stderr before execution.
|
|
56
|
+
*/
|
|
57
|
+
sourceText?: string;
|
|
58
|
+
}
|
|
59
|
+
/** A pipeline: cmd1 | cmd2 | cmd3 */
|
|
60
|
+
export interface PipelineNode extends ASTNode {
|
|
61
|
+
type: "Pipeline";
|
|
62
|
+
commands: CommandNode[];
|
|
63
|
+
/** Negate exit status with ! */
|
|
64
|
+
negated: boolean;
|
|
65
|
+
/** Time the pipeline with 'time' keyword */
|
|
66
|
+
timed?: boolean;
|
|
67
|
+
/** Use POSIX format for time output (-p flag) */
|
|
68
|
+
timePosix?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* For each pipe in the pipeline, whether it's |& (pipe stderr too).
|
|
71
|
+
* pipeStderr[i] indicates if command[i]'s stderr should be piped to command[i+1]'s stdin.
|
|
72
|
+
* Length is commands.length - 1.
|
|
73
|
+
*/
|
|
74
|
+
pipeStderr?: boolean[];
|
|
75
|
+
}
|
|
76
|
+
/** Union of all command types */
|
|
77
|
+
export type CommandNode = SimpleCommandNode | CompoundCommandNode | FunctionDefNode;
|
|
78
|
+
/** Simple command: name args... with optional redirections */
|
|
79
|
+
export interface SimpleCommandNode extends ASTNode {
|
|
80
|
+
type: "SimpleCommand";
|
|
81
|
+
/** Variable assignments before command: VAR=value cmd */
|
|
82
|
+
assignments: AssignmentNode[];
|
|
83
|
+
/** Command name (may be empty for assignment-only) */
|
|
84
|
+
name: WordNode | null;
|
|
85
|
+
/** Command arguments */
|
|
86
|
+
args: WordNode[];
|
|
87
|
+
/** I/O redirections */
|
|
88
|
+
redirections: RedirectionNode[];
|
|
89
|
+
}
|
|
90
|
+
/** Compound commands: control structures */
|
|
91
|
+
export type CompoundCommandNode = IfNode | ForNode | CStyleForNode | WhileNode | UntilNode | CaseNode | SubshellNode | GroupNode | ArithmeticCommandNode | ConditionalCommandNode;
|
|
92
|
+
/** if statement */
|
|
93
|
+
export interface IfNode extends ASTNode {
|
|
94
|
+
type: "If";
|
|
95
|
+
clauses: IfClause[];
|
|
96
|
+
elseBody: StatementNode[] | null;
|
|
97
|
+
redirections: RedirectionNode[];
|
|
98
|
+
}
|
|
99
|
+
export interface IfClause {
|
|
100
|
+
condition: StatementNode[];
|
|
101
|
+
body: StatementNode[];
|
|
102
|
+
}
|
|
103
|
+
/** for loop: for VAR in WORDS; do ...; done */
|
|
104
|
+
export interface ForNode extends ASTNode {
|
|
105
|
+
type: "For";
|
|
106
|
+
variable: string;
|
|
107
|
+
/** Words to iterate over (null = "$@") */
|
|
108
|
+
words: WordNode[] | null;
|
|
109
|
+
body: StatementNode[];
|
|
110
|
+
redirections: RedirectionNode[];
|
|
111
|
+
}
|
|
112
|
+
/** C-style for loop: for ((init; cond; step)); do ...; done */
|
|
113
|
+
export interface CStyleForNode extends ASTNode {
|
|
114
|
+
type: "CStyleFor";
|
|
115
|
+
init: ArithmeticExpressionNode | null;
|
|
116
|
+
condition: ArithmeticExpressionNode | null;
|
|
117
|
+
update: ArithmeticExpressionNode | null;
|
|
118
|
+
body: StatementNode[];
|
|
119
|
+
redirections: RedirectionNode[];
|
|
120
|
+
}
|
|
121
|
+
/** while loop */
|
|
122
|
+
export interface WhileNode extends ASTNode {
|
|
123
|
+
type: "While";
|
|
124
|
+
condition: StatementNode[];
|
|
125
|
+
body: StatementNode[];
|
|
126
|
+
redirections: RedirectionNode[];
|
|
127
|
+
}
|
|
128
|
+
/** until loop */
|
|
129
|
+
export interface UntilNode extends ASTNode {
|
|
130
|
+
type: "Until";
|
|
131
|
+
condition: StatementNode[];
|
|
132
|
+
body: StatementNode[];
|
|
133
|
+
redirections: RedirectionNode[];
|
|
134
|
+
}
|
|
135
|
+
/** case statement */
|
|
136
|
+
export interface CaseNode extends ASTNode {
|
|
137
|
+
type: "Case";
|
|
138
|
+
word: WordNode;
|
|
139
|
+
items: CaseItemNode[];
|
|
140
|
+
redirections: RedirectionNode[];
|
|
141
|
+
}
|
|
142
|
+
export interface CaseItemNode extends ASTNode {
|
|
143
|
+
type: "CaseItem";
|
|
144
|
+
patterns: WordNode[];
|
|
145
|
+
body: StatementNode[];
|
|
146
|
+
/** Terminator: ";;" | ";&" | ";;&" */
|
|
147
|
+
terminator: ";;" | ";&" | ";;&";
|
|
148
|
+
}
|
|
149
|
+
/** Subshell: ( ... ) */
|
|
150
|
+
export interface SubshellNode extends ASTNode {
|
|
151
|
+
type: "Subshell";
|
|
152
|
+
body: StatementNode[];
|
|
153
|
+
redirections: RedirectionNode[];
|
|
154
|
+
}
|
|
155
|
+
/** Command group: { ...; } */
|
|
156
|
+
export interface GroupNode extends ASTNode {
|
|
157
|
+
type: "Group";
|
|
158
|
+
body: StatementNode[];
|
|
159
|
+
redirections: RedirectionNode[];
|
|
160
|
+
}
|
|
161
|
+
/** Arithmetic command: (( expr )) */
|
|
162
|
+
export interface ArithmeticCommandNode extends ASTNode {
|
|
163
|
+
type: "ArithmeticCommand";
|
|
164
|
+
expression: ArithmeticExpressionNode;
|
|
165
|
+
redirections: RedirectionNode[];
|
|
166
|
+
}
|
|
167
|
+
/** Conditional command: [[ expr ]] */
|
|
168
|
+
export interface ConditionalCommandNode extends ASTNode {
|
|
169
|
+
type: "ConditionalCommand";
|
|
170
|
+
expression: ConditionalExpressionNode;
|
|
171
|
+
redirections: RedirectionNode[];
|
|
172
|
+
line?: number;
|
|
173
|
+
}
|
|
174
|
+
/** Function definition */
|
|
175
|
+
export interface FunctionDefNode extends ASTNode {
|
|
176
|
+
type: "FunctionDef";
|
|
177
|
+
name: string;
|
|
178
|
+
body: CompoundCommandNode;
|
|
179
|
+
redirections: RedirectionNode[];
|
|
180
|
+
/** Source file where the function was defined (for BASH_SOURCE tracking) */
|
|
181
|
+
sourceFile?: string;
|
|
182
|
+
}
|
|
183
|
+
/** Variable assignment: VAR=value or VAR+=value */
|
|
184
|
+
export interface AssignmentNode extends ASTNode {
|
|
185
|
+
type: "Assignment";
|
|
186
|
+
name: string;
|
|
187
|
+
value: WordNode | null;
|
|
188
|
+
/** Append mode: VAR+=value */
|
|
189
|
+
append: boolean;
|
|
190
|
+
/** Array assignment: VAR=(a b c) */
|
|
191
|
+
array: WordNode[] | null;
|
|
192
|
+
}
|
|
193
|
+
/** I/O redirection */
|
|
194
|
+
export interface RedirectionNode extends ASTNode {
|
|
195
|
+
type: "Redirection";
|
|
196
|
+
/** File descriptor (default depends on operator) */
|
|
197
|
+
fd: number | null;
|
|
198
|
+
/**
|
|
199
|
+
* Variable name for automatic FD allocation ({varname}>file syntax).
|
|
200
|
+
* When set, bash allocates an FD >= 10 and stores the number in this variable.
|
|
201
|
+
*/
|
|
202
|
+
fdVariable?: string;
|
|
203
|
+
operator: RedirectionOperator;
|
|
204
|
+
target: WordNode | HereDocNode;
|
|
205
|
+
}
|
|
206
|
+
export type RedirectionOperator = "<" | ">" | ">>" | ">&" | "<&" | "<>" | ">|" | "&>" | "&>>" | "<<<" | "<<" | "<<-";
|
|
207
|
+
/** Here document */
|
|
208
|
+
export interface HereDocNode extends ASTNode {
|
|
209
|
+
type: "HereDoc";
|
|
210
|
+
delimiter: string;
|
|
211
|
+
content: WordNode;
|
|
212
|
+
/** Strip leading tabs (<<- vs <<) */
|
|
213
|
+
stripTabs: boolean;
|
|
214
|
+
/** Quoted delimiter means no expansion */
|
|
215
|
+
quoted: boolean;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* A Word is a sequence of parts that form a single shell word.
|
|
219
|
+
* After expansion, it may produce zero, one, or multiple strings.
|
|
220
|
+
*/
|
|
221
|
+
export interface WordNode extends ASTNode {
|
|
222
|
+
type: "Word";
|
|
223
|
+
parts: WordPart[];
|
|
224
|
+
}
|
|
225
|
+
/** Parts that can make up a word */
|
|
226
|
+
export type WordPart = LiteralPart | BytesPart | SingleQuotedPart | DoubleQuotedPart | EscapedPart | ParameterExpansionPart | CommandSubstitutionPart | ArithmeticExpansionPart | ProcessSubstitutionPart | BraceExpansionPart | TildeExpansionPart | GlobPart;
|
|
227
|
+
/** Literal text (no special meaning) */
|
|
228
|
+
export interface LiteralPart extends ASTNode {
|
|
229
|
+
type: "Literal";
|
|
230
|
+
value: string;
|
|
231
|
+
}
|
|
232
|
+
/** Raw bytes (from $'...' ANSI-C quoting with \xHH, \0NNN escapes) */
|
|
233
|
+
export interface BytesPart extends ASTNode {
|
|
234
|
+
type: "Bytes";
|
|
235
|
+
value: Uint8Array;
|
|
236
|
+
}
|
|
237
|
+
/** Single-quoted string: 'literal' */
|
|
238
|
+
export interface SingleQuotedPart extends ASTNode {
|
|
239
|
+
type: "SingleQuoted";
|
|
240
|
+
value: string;
|
|
241
|
+
}
|
|
242
|
+
/** Double-quoted string: "with $expansion" */
|
|
243
|
+
export interface DoubleQuotedPart extends ASTNode {
|
|
244
|
+
type: "DoubleQuoted";
|
|
245
|
+
parts: WordPart[];
|
|
246
|
+
}
|
|
247
|
+
/** Escaped character: \x */
|
|
248
|
+
export interface EscapedPart extends ASTNode {
|
|
249
|
+
type: "Escaped";
|
|
250
|
+
value: string;
|
|
251
|
+
}
|
|
252
|
+
/** Parameter/variable expansion: $VAR or ${VAR...} */
|
|
253
|
+
export interface ParameterExpansionPart extends ASTNode {
|
|
254
|
+
type: "ParameterExpansion";
|
|
255
|
+
parameter: string;
|
|
256
|
+
/** Expansion operation */
|
|
257
|
+
operation: ParameterOperation | null;
|
|
258
|
+
}
|
|
259
|
+
/** Operations that can be used as inner operations for indirection (${!ref-default}) */
|
|
260
|
+
export type InnerParameterOperation = DefaultValueOp | AssignDefaultOp | ErrorIfUnsetOp | UseAlternativeOp | LengthOp | LengthSliceErrorOp | BadSubstitutionOp | SubstringOp | PatternRemovalOp | PatternReplacementOp | CaseModificationOp | TransformOp;
|
|
261
|
+
export type ParameterOperation = InnerParameterOperation | IndirectionOp | ArrayKeysOp | VarNamePrefixOp;
|
|
262
|
+
/** ${#VAR:...} - invalid syntax, length cannot have substring */
|
|
263
|
+
export interface LengthSliceErrorOp {
|
|
264
|
+
type: "LengthSliceError";
|
|
265
|
+
}
|
|
266
|
+
/** Bad substitution - parsed but errors at runtime (e.g., ${(x)foo} zsh syntax) */
|
|
267
|
+
export interface BadSubstitutionOp {
|
|
268
|
+
type: "BadSubstitution";
|
|
269
|
+
/** The raw text that caused the error (for error message) */
|
|
270
|
+
text: string;
|
|
271
|
+
}
|
|
272
|
+
/** ${VAR:-default} or ${VAR-default} */
|
|
273
|
+
export interface DefaultValueOp {
|
|
274
|
+
type: "DefaultValue";
|
|
275
|
+
word: WordNode;
|
|
276
|
+
checkEmpty: boolean;
|
|
277
|
+
}
|
|
278
|
+
/** ${VAR:=default} or ${VAR=default} */
|
|
279
|
+
export interface AssignDefaultOp {
|
|
280
|
+
type: "AssignDefault";
|
|
281
|
+
word: WordNode;
|
|
282
|
+
checkEmpty: boolean;
|
|
283
|
+
}
|
|
284
|
+
/** ${VAR:?error} or ${VAR?error} */
|
|
285
|
+
export interface ErrorIfUnsetOp {
|
|
286
|
+
type: "ErrorIfUnset";
|
|
287
|
+
word: WordNode | null;
|
|
288
|
+
checkEmpty: boolean;
|
|
289
|
+
}
|
|
290
|
+
/** ${VAR:+alternative} or ${VAR+alternative} */
|
|
291
|
+
export interface UseAlternativeOp {
|
|
292
|
+
type: "UseAlternative";
|
|
293
|
+
word: WordNode;
|
|
294
|
+
checkEmpty: boolean;
|
|
295
|
+
}
|
|
296
|
+
/** ${#VAR} */
|
|
297
|
+
export interface LengthOp {
|
|
298
|
+
type: "Length";
|
|
299
|
+
}
|
|
300
|
+
/** ${VAR:offset} or ${VAR:offset:length} */
|
|
301
|
+
export interface SubstringOp {
|
|
302
|
+
type: "Substring";
|
|
303
|
+
offset: ArithmeticExpressionNode;
|
|
304
|
+
length: ArithmeticExpressionNode | null;
|
|
305
|
+
}
|
|
306
|
+
/** ${VAR#pattern}, ${VAR##pattern}, ${VAR%pattern}, ${VAR%%pattern} */
|
|
307
|
+
export interface PatternRemovalOp {
|
|
308
|
+
type: "PatternRemoval";
|
|
309
|
+
pattern: WordNode;
|
|
310
|
+
/** "prefix" = # or ##, "suffix" = % or %% */
|
|
311
|
+
side: "prefix" | "suffix";
|
|
312
|
+
/** Greedy (## or %%) vs non-greedy (# or %) */
|
|
313
|
+
greedy: boolean;
|
|
314
|
+
}
|
|
315
|
+
/** ${VAR/pattern/replacement} or ${VAR//pattern/replacement} */
|
|
316
|
+
export interface PatternReplacementOp {
|
|
317
|
+
type: "PatternReplacement";
|
|
318
|
+
pattern: WordNode;
|
|
319
|
+
replacement: WordNode | null;
|
|
320
|
+
/** Replace all occurrences */
|
|
321
|
+
all: boolean;
|
|
322
|
+
/** Match at start (#) or end (%) only */
|
|
323
|
+
anchor: "start" | "end" | null;
|
|
324
|
+
}
|
|
325
|
+
/** ${VAR^}, ${VAR^^}, ${VAR,}, ${VAR,,} */
|
|
326
|
+
export interface CaseModificationOp {
|
|
327
|
+
type: "CaseModification";
|
|
328
|
+
/** "upper" = ^ or ^^, "lower" = , or ,, */
|
|
329
|
+
direction: "upper" | "lower";
|
|
330
|
+
/** Apply to all characters */
|
|
331
|
+
all: boolean;
|
|
332
|
+
pattern: WordNode | null;
|
|
333
|
+
}
|
|
334
|
+
/** ${var@Q}, ${var@P}, etc. - parameter transformation */
|
|
335
|
+
export interface TransformOp {
|
|
336
|
+
type: "Transform";
|
|
337
|
+
/** Q=quote, P=prompt, a=attributes, A=assignment, E=escape, K=keys, k=keys(alt), u=ucfirst, U=uppercase, L=lowercase */
|
|
338
|
+
operator: "Q" | "P" | "a" | "A" | "E" | "K" | "k" | "u" | "U" | "L";
|
|
339
|
+
}
|
|
340
|
+
/** ${!VAR} - indirect expansion, optionally combined with another operation like ${!ref-default} */
|
|
341
|
+
export interface IndirectionOp {
|
|
342
|
+
type: "Indirection";
|
|
343
|
+
/** Additional operation to apply after indirection (e.g., ${!ref-default}) */
|
|
344
|
+
innerOp?: InnerParameterOperation;
|
|
345
|
+
}
|
|
346
|
+
/** ${!arr[@]} or ${!arr[*]} - array keys/indices */
|
|
347
|
+
export interface ArrayKeysOp {
|
|
348
|
+
type: "ArrayKeys";
|
|
349
|
+
/** The array name (without subscript) */
|
|
350
|
+
array: string;
|
|
351
|
+
/** true if [*] was used instead of [@] */
|
|
352
|
+
star: boolean;
|
|
353
|
+
}
|
|
354
|
+
/** ${!prefix*} or ${!prefix@} - list variable names with prefix */
|
|
355
|
+
export interface VarNamePrefixOp {
|
|
356
|
+
type: "VarNamePrefix";
|
|
357
|
+
/** The prefix to match */
|
|
358
|
+
prefix: string;
|
|
359
|
+
/** true if * was used instead of @ */
|
|
360
|
+
star: boolean;
|
|
361
|
+
}
|
|
362
|
+
/** Command substitution: $(cmd) or `cmd` */
|
|
363
|
+
export interface CommandSubstitutionPart extends ASTNode {
|
|
364
|
+
type: "CommandSubstitution";
|
|
365
|
+
body: ScriptNode;
|
|
366
|
+
/** Legacy backtick syntax */
|
|
367
|
+
legacy: boolean;
|
|
368
|
+
}
|
|
369
|
+
/** Arithmetic expansion: $((expr)) */
|
|
370
|
+
export interface ArithmeticExpansionPart extends ASTNode {
|
|
371
|
+
type: "ArithmeticExpansion";
|
|
372
|
+
expression: ArithmeticExpressionNode;
|
|
373
|
+
}
|
|
374
|
+
/** Arithmetic expression (for $((...)) and ((...))) */
|
|
375
|
+
export interface ArithmeticExpressionNode extends ASTNode {
|
|
376
|
+
type: "ArithmeticExpression";
|
|
377
|
+
expression: ArithExpr;
|
|
378
|
+
/** Original expression text before parsing, used for re-parsing after variable expansion */
|
|
379
|
+
originalText?: string;
|
|
380
|
+
}
|
|
381
|
+
export type ArithExpr = ArithNumberNode | ArithVariableNode | ArithSpecialVarNode | ArithBinaryNode | ArithUnaryNode | ArithTernaryNode | ArithAssignmentNode | ArithDynamicAssignmentNode | ArithDynamicElementNode | ArithGroupNode | ArithNestedNode | ArithCommandSubstNode | ArithBracedExpansionNode | ArithArrayElementNode | ArithDynamicBaseNode | ArithDynamicNumberNode | ArithConcatNode | ArithDoubleSubscriptNode | ArithNumberSubscriptNode | ArithSyntaxErrorNode | ArithSingleQuoteNode;
|
|
382
|
+
export interface ArithBracedExpansionNode extends ASTNode {
|
|
383
|
+
type: "ArithBracedExpansion";
|
|
384
|
+
content: string;
|
|
385
|
+
}
|
|
386
|
+
/** Dynamic base constant: ${base}#value where base is expanded at runtime */
|
|
387
|
+
export interface ArithDynamicBaseNode extends ASTNode {
|
|
388
|
+
type: "ArithDynamicBase";
|
|
389
|
+
baseExpr: string;
|
|
390
|
+
value: string;
|
|
391
|
+
}
|
|
392
|
+
/** Dynamic number prefix: ${zero}11 or ${zero}xAB for dynamic octal/hex */
|
|
393
|
+
export interface ArithDynamicNumberNode extends ASTNode {
|
|
394
|
+
type: "ArithDynamicNumber";
|
|
395
|
+
prefix: string;
|
|
396
|
+
suffix: string;
|
|
397
|
+
}
|
|
398
|
+
/** Concatenation of multiple parts forming a single numeric value */
|
|
399
|
+
export interface ArithConcatNode extends ASTNode {
|
|
400
|
+
type: "ArithConcat";
|
|
401
|
+
parts: ArithExpr[];
|
|
402
|
+
}
|
|
403
|
+
export interface ArithArrayElementNode extends ASTNode {
|
|
404
|
+
type: "ArithArrayElement";
|
|
405
|
+
array: string;
|
|
406
|
+
/** The index expression (for numeric indices) */
|
|
407
|
+
index?: ArithExpr;
|
|
408
|
+
/** For associative arrays: literal string key (e.g., 'key' or "key") */
|
|
409
|
+
stringKey?: string;
|
|
410
|
+
}
|
|
411
|
+
/** Invalid double subscript node (e.g., a[1][1]) - evaluated to error at runtime */
|
|
412
|
+
export interface ArithDoubleSubscriptNode extends ASTNode {
|
|
413
|
+
type: "ArithDoubleSubscript";
|
|
414
|
+
array: string;
|
|
415
|
+
index: ArithExpr;
|
|
416
|
+
}
|
|
417
|
+
/** Invalid number subscript node (e.g., 1[2]) - evaluated to error at runtime */
|
|
418
|
+
export interface ArithNumberSubscriptNode extends ASTNode {
|
|
419
|
+
type: "ArithNumberSubscript";
|
|
420
|
+
number: string;
|
|
421
|
+
errorToken: string;
|
|
422
|
+
}
|
|
423
|
+
/** Syntax error in arithmetic expression - evaluated to error at runtime */
|
|
424
|
+
export interface ArithSyntaxErrorNode extends ASTNode {
|
|
425
|
+
type: "ArithSyntaxError";
|
|
426
|
+
errorToken: string;
|
|
427
|
+
message: string;
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* Single-quoted string in arithmetic expression.
|
|
431
|
+
* In $(()) expansion context, this causes an error.
|
|
432
|
+
* In (()) command context, this is evaluated as a number.
|
|
433
|
+
*/
|
|
434
|
+
export interface ArithSingleQuoteNode extends ASTNode {
|
|
435
|
+
type: "ArithSingleQuote";
|
|
436
|
+
content: string;
|
|
437
|
+
value: number;
|
|
438
|
+
}
|
|
439
|
+
export interface ArithNumberNode extends ASTNode {
|
|
440
|
+
type: "ArithNumber";
|
|
441
|
+
value: number;
|
|
442
|
+
}
|
|
443
|
+
export interface ArithVariableNode extends ASTNode {
|
|
444
|
+
type: "ArithVariable";
|
|
445
|
+
name: string;
|
|
446
|
+
/** True if the variable was written with $ prefix (e.g., $x vs x) */
|
|
447
|
+
hasDollarPrefix?: boolean;
|
|
448
|
+
}
|
|
449
|
+
/** Special variable node: $*, $@, $#, $?, $-, $!, $$ */
|
|
450
|
+
export interface ArithSpecialVarNode extends ASTNode {
|
|
451
|
+
type: "ArithSpecialVar";
|
|
452
|
+
name: string;
|
|
453
|
+
}
|
|
454
|
+
export interface ArithBinaryNode extends ASTNode {
|
|
455
|
+
type: "ArithBinary";
|
|
456
|
+
operator: "+" | "-" | "*" | "/" | "%" | "**" | "<<" | ">>" | "<" | "<=" | ">" | ">=" | "==" | "!=" | "&" | "|" | "^" | "&&" | "||" | ",";
|
|
457
|
+
left: ArithExpr;
|
|
458
|
+
right: ArithExpr;
|
|
459
|
+
}
|
|
460
|
+
export interface ArithUnaryNode extends ASTNode {
|
|
461
|
+
type: "ArithUnary";
|
|
462
|
+
operator: "-" | "+" | "!" | "~" | "++" | "--";
|
|
463
|
+
operand: ArithExpr;
|
|
464
|
+
/** Prefix vs postfix for ++ and -- */
|
|
465
|
+
prefix: boolean;
|
|
466
|
+
}
|
|
467
|
+
export interface ArithTernaryNode extends ASTNode {
|
|
468
|
+
type: "ArithTernary";
|
|
469
|
+
condition: ArithExpr;
|
|
470
|
+
consequent: ArithExpr;
|
|
471
|
+
alternate: ArithExpr;
|
|
472
|
+
}
|
|
473
|
+
export type ArithAssignmentOperator = "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | "&=" | "|=" | "^=";
|
|
474
|
+
export interface ArithAssignmentNode extends ASTNode {
|
|
475
|
+
type: "ArithAssignment";
|
|
476
|
+
operator: ArithAssignmentOperator;
|
|
477
|
+
variable: string;
|
|
478
|
+
/** For array element assignment: the subscript expression */
|
|
479
|
+
subscript?: ArithExpr;
|
|
480
|
+
/** For associative arrays: literal string key (e.g., 'key' or "key") */
|
|
481
|
+
stringKey?: string;
|
|
482
|
+
value: ArithExpr;
|
|
483
|
+
}
|
|
484
|
+
/** Dynamic assignment where variable name is built from concatenation: x$foo = 42 or x$foo[5] = 42 */
|
|
485
|
+
export interface ArithDynamicAssignmentNode extends ASTNode {
|
|
486
|
+
type: "ArithDynamicAssignment";
|
|
487
|
+
operator: ArithAssignmentOperator;
|
|
488
|
+
/** The target expression (ArithConcat) that evaluates to the variable name */
|
|
489
|
+
target: ArithExpr;
|
|
490
|
+
/** For array element assignment: the subscript expression */
|
|
491
|
+
subscript?: ArithExpr;
|
|
492
|
+
value: ArithExpr;
|
|
493
|
+
}
|
|
494
|
+
/** Dynamic array element where array name is built from concatenation: x$foo[5] */
|
|
495
|
+
export interface ArithDynamicElementNode extends ASTNode {
|
|
496
|
+
type: "ArithDynamicElement";
|
|
497
|
+
/** The expression (ArithConcat) that evaluates to the array name */
|
|
498
|
+
nameExpr: ArithExpr;
|
|
499
|
+
/** The subscript expression */
|
|
500
|
+
subscript: ArithExpr;
|
|
501
|
+
}
|
|
502
|
+
export interface ArithGroupNode extends ASTNode {
|
|
503
|
+
type: "ArithGroup";
|
|
504
|
+
expression: ArithExpr;
|
|
505
|
+
}
|
|
506
|
+
/** Nested arithmetic expansion within arithmetic context: $((expr)) */
|
|
507
|
+
export interface ArithNestedNode extends ASTNode {
|
|
508
|
+
type: "ArithNested";
|
|
509
|
+
expression: ArithExpr;
|
|
510
|
+
}
|
|
511
|
+
/** Command substitution within arithmetic context: $(cmd) or `cmd` */
|
|
512
|
+
export interface ArithCommandSubstNode extends ASTNode {
|
|
513
|
+
type: "ArithCommandSubst";
|
|
514
|
+
command: string;
|
|
515
|
+
}
|
|
516
|
+
/** Process substitution: <(cmd) or >(cmd) */
|
|
517
|
+
export interface ProcessSubstitutionPart extends ASTNode {
|
|
518
|
+
type: "ProcessSubstitution";
|
|
519
|
+
body: ScriptNode;
|
|
520
|
+
direction: "input" | "output";
|
|
521
|
+
}
|
|
522
|
+
/** Brace expansion: {a,b,c} or {1..10} */
|
|
523
|
+
export interface BraceExpansionPart extends ASTNode {
|
|
524
|
+
type: "BraceExpansion";
|
|
525
|
+
items: BraceItem[];
|
|
526
|
+
}
|
|
527
|
+
export type BraceItem = {
|
|
528
|
+
type: "Word";
|
|
529
|
+
word: WordNode;
|
|
530
|
+
} | {
|
|
531
|
+
type: "Range";
|
|
532
|
+
start: string | number;
|
|
533
|
+
end: string | number;
|
|
534
|
+
step?: number;
|
|
535
|
+
startStr?: string;
|
|
536
|
+
endStr?: string;
|
|
537
|
+
};
|
|
538
|
+
/** Tilde expansion: ~ or ~user */
|
|
539
|
+
export interface TildeExpansionPart extends ASTNode {
|
|
540
|
+
type: "TildeExpansion";
|
|
541
|
+
user: string | null;
|
|
542
|
+
}
|
|
543
|
+
/** Glob pattern part (expanded during pathname expansion) */
|
|
544
|
+
export interface GlobPart extends ASTNode {
|
|
545
|
+
type: "Glob";
|
|
546
|
+
pattern: string;
|
|
547
|
+
}
|
|
548
|
+
export type ConditionalExpressionNode = CondBinaryNode | CondUnaryNode | CondNotNode | CondAndNode | CondOrNode | CondGroupNode | CondWordNode;
|
|
549
|
+
export type CondBinaryOperator = "=" | "==" | "!=" | "=~" | "<" | ">" | "-eq" | "-ne" | "-lt" | "-le" | "-gt" | "-ge" | "-nt" | "-ot" | "-ef";
|
|
550
|
+
export interface CondBinaryNode extends ASTNode {
|
|
551
|
+
type: "CondBinary";
|
|
552
|
+
operator: CondBinaryOperator;
|
|
553
|
+
left: WordNode;
|
|
554
|
+
right: WordNode;
|
|
555
|
+
}
|
|
556
|
+
export type CondUnaryOperator = "-a" | "-b" | "-c" | "-d" | "-e" | "-f" | "-g" | "-h" | "-k" | "-p" | "-r" | "-s" | "-t" | "-u" | "-w" | "-x" | "-G" | "-L" | "-N" | "-O" | "-S" | "-z" | "-n" | "-o" | "-v" | "-R";
|
|
557
|
+
export interface CondUnaryNode extends ASTNode {
|
|
558
|
+
type: "CondUnary";
|
|
559
|
+
operator: CondUnaryOperator;
|
|
560
|
+
operand: WordNode;
|
|
561
|
+
}
|
|
562
|
+
export interface CondNotNode extends ASTNode {
|
|
563
|
+
type: "CondNot";
|
|
564
|
+
operand: ConditionalExpressionNode;
|
|
565
|
+
}
|
|
566
|
+
export interface CondAndNode extends ASTNode {
|
|
567
|
+
type: "CondAnd";
|
|
568
|
+
left: ConditionalExpressionNode;
|
|
569
|
+
right: ConditionalExpressionNode;
|
|
570
|
+
}
|
|
571
|
+
export interface CondOrNode extends ASTNode {
|
|
572
|
+
type: "CondOr";
|
|
573
|
+
left: ConditionalExpressionNode;
|
|
574
|
+
right: ConditionalExpressionNode;
|
|
575
|
+
}
|
|
576
|
+
export interface CondGroupNode extends ASTNode {
|
|
577
|
+
type: "CondGroup";
|
|
578
|
+
expression: ConditionalExpressionNode;
|
|
579
|
+
}
|
|
580
|
+
export interface CondWordNode extends ASTNode {
|
|
581
|
+
type: "CondWord";
|
|
582
|
+
word: WordNode;
|
|
583
|
+
}
|
|
584
|
+
export declare const AST: {
|
|
585
|
+
script(statements: StatementNode[]): ScriptNode;
|
|
586
|
+
statement(pipelines: PipelineNode[], operators?: ("&&" | "||" | ";")[], background?: boolean, deferredError?: {
|
|
587
|
+
message: string;
|
|
588
|
+
token: string;
|
|
589
|
+
}, sourceText?: string): StatementNode;
|
|
590
|
+
pipeline(commands: CommandNode[], negated?: boolean, timed?: boolean, timePosix?: boolean, pipeStderr?: boolean[]): PipelineNode;
|
|
591
|
+
simpleCommand(name: WordNode | null, args?: WordNode[], assignments?: AssignmentNode[], redirections?: RedirectionNode[]): SimpleCommandNode;
|
|
592
|
+
word(parts: WordPart[]): WordNode;
|
|
593
|
+
literal(value: string): LiteralPart;
|
|
594
|
+
bytes(value: Uint8Array): BytesPart;
|
|
595
|
+
singleQuoted(value: string): SingleQuotedPart;
|
|
596
|
+
doubleQuoted(parts: WordPart[]): DoubleQuotedPart;
|
|
597
|
+
escaped(value: string): EscapedPart;
|
|
598
|
+
parameterExpansion(parameter: string, operation?: ParameterOperation | null): ParameterExpansionPart;
|
|
599
|
+
commandSubstitution(body: ScriptNode, legacy?: boolean): CommandSubstitutionPart;
|
|
600
|
+
arithmeticExpansion(expression: ArithmeticExpressionNode): ArithmeticExpansionPart;
|
|
601
|
+
assignment(name: string, value: WordNode | null, append?: boolean, array?: WordNode[] | null): AssignmentNode;
|
|
602
|
+
redirection(operator: RedirectionOperator, target: WordNode | HereDocNode, fd?: number | null, fdVariable?: string): RedirectionNode;
|
|
603
|
+
hereDoc(delimiter: string, content: WordNode, stripTabs?: boolean, quoted?: boolean): HereDocNode;
|
|
604
|
+
ifNode(clauses: IfClause[], elseBody?: StatementNode[] | null, redirections?: RedirectionNode[]): IfNode;
|
|
605
|
+
forNode(variable: string, words: WordNode[] | null, body: StatementNode[], redirections?: RedirectionNode[]): ForNode;
|
|
606
|
+
whileNode(condition: StatementNode[], body: StatementNode[], redirections?: RedirectionNode[]): WhileNode;
|
|
607
|
+
untilNode(condition: StatementNode[], body: StatementNode[], redirections?: RedirectionNode[]): UntilNode;
|
|
608
|
+
caseNode(word: WordNode, items: CaseItemNode[], redirections?: RedirectionNode[]): CaseNode;
|
|
609
|
+
caseItem(patterns: WordNode[], body: StatementNode[], terminator?: ";;" | ";&" | ";;&"): CaseItemNode;
|
|
610
|
+
subshell(body: StatementNode[], redirections?: RedirectionNode[]): SubshellNode;
|
|
611
|
+
group(body: StatementNode[], redirections?: RedirectionNode[]): GroupNode;
|
|
612
|
+
functionDef(name: string, body: CompoundCommandNode, redirections?: RedirectionNode[], sourceFile?: string): FunctionDefNode;
|
|
613
|
+
conditionalCommand(expression: ConditionalExpressionNode, redirections?: RedirectionNode[], line?: number): ConditionalCommandNode;
|
|
614
|
+
arithmeticCommand(expression: ArithmeticExpressionNode, redirections?: RedirectionNode[], line?: number): ArithmeticCommandNode;
|
|
615
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file exists solely to test that the banned-patterns lint script
|
|
3
|
+
* correctly detects all patterns and that ignore comments work properly.
|
|
4
|
+
*
|
|
5
|
+
* DO NOT import or use this file anywhere - it's only for lint verification.
|
|
6
|
+
* Each pattern below would be flagged without its corresponding ignore comment.
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{g as a,h as b,i as c,j as d,k as e,l as f,m as g,n as h,o as i,p as j}from"./chunk-RQSPCXDR.js";export{a as EMPTY,d as concat,i as createStringEnvAdapter,c as decode,f as decodeArgs,b as encode,g as envGet,h as envSet,e as isEmpty,j as trimTrailingNewlines};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{g as s,h as o}from"./chunk-RQSPCXDR.js";function p(e){let t=`${e.name} - ${e.summary}
|
|
3
|
+
|
|
4
|
+
`;if(t+=`Usage: ${e.usage}
|
|
5
|
+
`,e.description){if(t+=`
|
|
6
|
+
Description:
|
|
7
|
+
`,typeof e.description=="string")for(let n of e.description.split(`
|
|
8
|
+
`))t+=n?` ${n}
|
|
9
|
+
`:`
|
|
10
|
+
`;else if(e.description.length>0)for(let n of e.description)t+=n?` ${n}
|
|
11
|
+
`:`
|
|
12
|
+
`}if(e.options&&e.options.length>0){t+=`
|
|
13
|
+
Options:
|
|
14
|
+
`;for(let n of e.options)t+=` ${n}
|
|
15
|
+
`}if(e.examples&&e.examples.length>0){t+=`
|
|
16
|
+
Examples:
|
|
17
|
+
`;for(let n of e.examples)t+=` ${n}
|
|
18
|
+
`}if(e.notes&&e.notes.length>0){t+=`
|
|
19
|
+
Notes:
|
|
20
|
+
`;for(let n of e.notes)t+=` ${n}
|
|
21
|
+
`}return{stdout:o(t),stderr:s,exitCode:0}}function i(e){return e.includes("--help")}function l(e,t){let n=t.startsWith("--")?`${e}: unrecognized option '${t}'
|
|
22
|
+
`:`${e}: invalid option -- '${t.replace(/^-/,"")}'
|
|
23
|
+
`;return{stdout:s,stderr:o(n),exitCode:1}}export{p as a,i as b,l as c};
|